The most important question you can ask when building software is, “What problem are you trying to solve?” This question forces you to rethink your assumptions, to leave behind lists of solutions looking for a problem, and to focus on the essentials. So while this job posting includes some skills and technologies later on, we think it makes sense to talk to you about our values first:
Constant improvement. If your processes have a way to improve themselves, you’ll never be stuck in a rut. We hold retros, and we value and protect the ability of any team member to say, “This can and should be better.” We value experimentation, especially when coupled with measurement.
Balance. We’re a collaborative team. We kick ideas around. The more viewpoints we have, the more likely we are to hear a good idea we haven’t thought of. We all have the opportunity to work on all parts of the system - no one is stuck working on the legacy systems full time. We know we can and should do better on this point (but see “constant improvement”).
Work to live, don’t live to work. We take our work seriously. We strive to make the best software we can for our clients. But we know that “release death marches” are not the way to achieve this. Software is a marathon, not a sprint. We work hard, but at a sustainable pace. Most of our engineers have families and children. Our CEO leaves every day at 4:00 to get his kids from the bus. Work to live, don’t live to work, and do better work as a result.
Autonomy. One of our core values as a company is, “We’re all adults.” We do code reviews and sometimes we pair program, but we trust each other. If you thought about the problem and have an opinion, your teammates will listen.
Mastery. Our CEO started out as a software engineer. Our VP of Engineering writes Clojure. We sometimes talk about Haskell in our Slack channels. We have an engineering team with decades of collective experience writing high-quality, fault-tolerant distributed systems. We love taking on and solving hard problems. We love learning.
A sense of purpose. We know what problem we’re trying to solve: to provide a first-rate ad serving platform to our customers while continuing to evolve our product to meet the needs of the future.
We are looking for a senior software engineer to help design, estimate, build, test, deploy, and operate our globally-distributed software-as-a-service platform. We work side-by-side with our product, sales, and support teams to expand and enhance our system, ensuring we provide the features our customers need with the performance, scalability, and dependability they require.
Experience with one or more of the following is helpful:
- Database technologies, including transactions
- Event stream processing
- Machine learning
- HTTP-based APIs
- Single page web apps
- Monitoring and operations
- Site Reliability Engineering
If any of this appeals to you, please get in touch. We’d love to tell you more about us and the way we work. We do ask that you be eligible to work in the United States. Adzerk's office is in Durham, NC, and you must be available to travel there a few times a year, but we have a first-rate remote culture.