As a Sr. Software Engineer you will be responsible for developing products for our customers and our internal stakeholders. We continuously strive for improvement of our software development and delivery practices, and the quality and resiliency of our software systems. We are looking for experienced engineers who are comfortable building back-end systems and client-side applications hosted in public cloud environments with a focus on automation and operational aspects such as metrics, logging, tracing and resiliency.
- Design, develop, maintain and support customer-facing applications, APIs and internal tooling
- Advocate software development best practices and lead by example, producing high quality, standards compliant code
- Drive improvements to our software delivery and deployment processes including test automation and continuous deployment
- Participate in the agile delivery process, producing architectures, designs, estimates and delivering software iteratively
- Support your software components in production, responding to incidents and fixing problems and defects
- Develop capacity models, execute performance testing and conduct system profiling to measure and improve performance
- Software development experience from front-end to back-end with knowledge of service oriented architectures, design patterns and data structures.
- Experience building web applications, back-end platforms, web services, messaging systems and transactional databases.
- Between 3 years and 7 years of software development experience.
- End-to-end software development and delivery including version control, test automation, continuous integration and deployment automation.
- Real-world experience supporting transactional systems in production.
- Knowledge of agile methodologies such as Scrum and Kanban
- Web server technologies like Node.js, Apache, Nginx, Tomcat, Jetty
- Experience developing full-stack applications with application development platforms and frameworks such as AngularJS, ReactJS, Node.js, Spring.
- Experience building relational data models and stored procedures for database technologies like MySQL, Oracle, PostgreSQL, Microsoft SQL Server
- Familiarity with alternative persistence technologies such as MongoDB, Cassandra, Couchbase
- Experience developing software for public cloud environments such as Amazon, Google or Microsoft
- Practical knowledge of operational monitoring and metrics, including time series databases, log aggregation, distributed tracing, web performance monitoring