Java Language Compiler Specialist - remote

ActiveState Software
Posted 3 years ago  • Vancouver, BC / Remote

Java Language Specialist

ActiveState Platform - made by developers for developers! We are reinventing build engineering with an on-demand SaaS Platform and CLI tool that lets developers automate the building of any runtime environment using any open source language ecosystem on any platform. In Beta right now, we support Python and Perl and we're hiring to add more languages and packages! We’re building an ambitious language distribution platform so that no engineer ever has to suffer dependency hell again, and we need your help to add Java to it!

This position is available to remote workers anywhere in the world, as long as you are able to work on a schedule that aligns with our core North American business hours of 10:00am - 4:00pm PST. You can also choose to work from our headquarters in beautiful Vancouver, BC once the health situation makes this possible.

What You’ll be Doing As a Java Language Specialist on our team, you are responsible for using your deep understanding of Java -- its internals, dependency management, idioms, and community -- to teach our Platform to build and distribute Java for multiple Operating Systems. We’re building from source. Note this is not a Java development role. Rather you'll be writing software to create custom Java distributions and this software won't necessarily be written in Java. You’ve been bitten by Java and have successfully tamed it.

Our day to day work practices are centered around GitHub, pull requests, code review, CI for testing, and agile development with Pivotal Tracker as our project management tool. We’re always looking to improve our practices and we expect you to help us to do so.

Our team is scattered around the US and Canada, so we coordinate with each other and the rest of the company using Slack for chat, Highfive for video calls and screen sharing, Pivotal Tracker, and Google Drive.

We like to use open source software whenever possible, and we also like to contribute back to the open source ecosystem. We embrace open sourcing both libraries and tools developed in-house as long as those are not mission-critical code.

What’s in it for You -Working for a stable and growing company that offers the environment and personal growth potential of a start-up. -The chance to work with a smart, passionate team of people. -Competitive salary, bonus, and stock option plan. -Comprehensive benefits package and health/wellness credit program.

Requirements

  • Deep understanding of the Java platform, its packaging ecosystem, and how to build Java and its dependencies.
  • Understand how JDK binaries are built and used
  • Understand how Maven dependency management works
  • Experience with C/C++ programming on multiple operating systems (Windows/UNIX/OSX) and the build system for a Java distribution (e.g. OpenJDK)
  • Ability to work in multiple languages. We use Python, Go, Perl, and other languages as needed.
  • Excellent written and spoken skills, both technical and non-technical. You’ll need to work closely with your developer teammates, as well as be able to have coherent conversations with people from QA, sales, marketing, and other parts of the company.
  • A willingness to engage in the process of defining our work through conversations with product management, other engineering teams, and the rest of the company.

Assets

If you have experience with any of the following please make sure to highlight it in your cover letter:

  • You are a maintainer, contributor to the core Java code base, or have a popular Java based Open Source project. We make special accommodations to help you maintain those activities.
  • A deep understanding of Maven and/or Nexus, especially their pros and cons, especially private artifact repositories.
  • Practical experience with Java 9 modules
  • Experience with JLink
  • Experience working on a build system outside of an IDE.
  • Agile processes, including breaking large projects up into smaller stories, estimation, working in branches (GitHub Flow), code review, and CI.
  • C or C++ code and debugging compiler issues across platforms.
  • Perl, Python, Tcl, or Java, especially an understanding of their respective language communities and their toolchains.
  • Big iron operating systems including Solaris, AIX, and HP-UX.
  • Build tools such as make, autotools, bazel, etc.

Working at ActiveState ActiveState has a collaborative, respectful, and professional culture. We’re all about working together to find the best solutions, and making sure that the experience of doing so is positive for everyone involved. There is a commitment from the CEO on down to making work at ActiveState a great experience for all of us.

Our company is a team of 50+ and growing, with 2/3rds of the positions in technical roles including software development and QA. We maintain a set of core, overlapping hours, but we’re flexible with specific start and end times and are understanding about appointments and life events.

Our vision is to have an ActiveState solution on every device on every planet, so we certainly don’t lack for ambition! But even though we’re ambitious we don’t expect work to become your life. We know you will do your best work in a positive environment free from death marches. For more about working at ActiveState and our Glassdoor rating go to www.activestate.com/careers.