You aspire to be an effective leader, possess strong software engineering and Java development fundamentals, and are ready to share your experience with others. You are unafraid to dig into unknown codebases to unravel unexpected behaviors and share what you find with your team. You value reliability, testability, and maintainability. You're proud of the code you write, but you're also pragmatic and believe in iteration. You know when it is time to refactor, and when it's time to ship -- and most importantly, you’re committed to helping others learn the skills that you’ve learned as you’ve grown as an engineer.
About the Position
The job of a Staff Engineer at Airship is to focus on distributed system design, development, and support on behalf of your product team. Our Staff Engineers lead solution design and project sequencing for their teams, and work with members of our architecture team to coordinate design patterns across our product lines. Staff engineers have the opportunity to set the day-to-day cadences and lead within their product teams. They delegate tasks where they can, teach others, and ultimately are responsible for the success of their team.
We provide low latency services that process a stream of events from both apps/web/mobile wallet/email/sms and internal services. We also support large analytical workloads, querying across billions of events and Terabytes of data.
● Our backend infrastructure is built on the Google Cloud Platform.
● Our backend infrastructure is primarily Java.
● Our platform uses microservices that talk to SQL and NoSQL databases and handle an immense load.
We have remote employees in engineering spread over many cities in the US, work extensively with our engineering colleagues in our Paris office, and encourage people outside of Portland to apply. Quarterly travel to our home office in Portland, OR is preferred but negotiable.
Airship has a fantastic career path for developing software engineers like yourself. Learn more about our tech ladder at https://github.com/urbanairship/techladder/blob/master/eng.md
Experience and Skills:
● Relevant experience of 6+ years with software engineering best practices: unit testing, code reviews, documentation, and version control.
● Desire to work as part of a team (and lead the team where necessary) to achieve shared commitments.
● Strong experience with distributed systems.
● Calmly work in a fast-paced environment to ensure continuous delivery.
● Experience providing structured mentorship and guidance for less experienced engineers: helping them break tasks down, providing thoughtful code reviews, and taking responsibility for the growth of the engineers on your team.
● Experience leading a release/project, working with and guiding a team of talented engineers and facilitating technical decision making.
● Experience in collaborating with cross-functional peers and take a project from requirements to design to implementation meeting relevant milestones.
● Experience using continuous improvement processes to reflect on projects and commit to making things better the next time around.