Senior Software Engineer
Natera
Job highlights
Summary
Join Natera, a rapidly growing company, as a Senior Software Engineer to lead the design, development, and maintenance of our Order Management Service, a crucial backend microservice. You will play a key role in driving technical excellence, mentoring other engineers, and positively impacting patient outcomes. This position requires strong expertise in Java and Spring Boot, working with GraphQL APIs and event-driven architectures. As a senior member of the engineering team, you will lead technical initiatives, mentor engineers, and drive best practices. Natera offers a competitive compensation package and benefits, including comprehensive medical, dental, vision, life and disability plans, free testing for employees and their families, fertility care benefits, and more.
Requirements
- 7+ years of overall software development experience, with focus on building secure, scalable backend services using Java and Spring Boot
- Strong experience with event-driven architecture and message processing using Apache Kafka
- Experience working with remote and hybrid teams including overseas contractors
- Experience mentoring engineers and driving technical best practices
- Experience with software development lifecycle processes including building, software configuration, releases and deployment activities
- Extensive knowledge and experience with Test-Driven Development and/or Domain-Driven Development
- Experience with service-oriented and microservice architecture
- Experience building, maintaining, troubleshooting, and expanding software within the AWS ecosystem: EC2, ECS, Lambda, Step Functions, SQS, SNS, S3, etc
- Experience with GraphQL API design and implementation in Java
- Strong relational database skills including database design and optimization
- Demonstrated leadership skills with a solid analytical background
- Excellent organizational, communication, presentation, and facilitation skills
Responsibilities
- Lead design and technical implementation decisions and help guide key stakeholders on the team to ensure that design and technical decisions meet a high standard of excellence and ensure robust order processing capabilities
- Mentor engineers, perform code reviews, and drive adoption of engineering best practices
- Work closely with Product Managers to gather requirements, walk through the design with stakeholders, and support software all the way from initial ideation to release, operation, and maintenance
- Lead the design, building, and maintenance of highly available backend systems to support our business applications, order processing, and integration with other services
- Drive quality initiatives and support QA activities in conjunction with our QA engineering teams
Preferred Qualifications
- Advanced Java Programming with Spring Boot expertise
- SQL and NoSQL database experience including MySQL, ElasticSearch, and DynamoDB
- AWS Services, such as EC2, Lambdas, Step Functions, SQS, S3, and SNS
- Build infrastructure as code with Terraform and Cloud Formation
- Docker or container-oriented technologies
- GraphQL API development using Java
- Apache Kafka for event streaming
- Microservice Architecture
- CI / CD (Gitlab)
- Quality Assurance Mindset
- Experience with testing frameworks like JUnit, Mockito
- Expert knowledge of Spring ecosystem (Spring Data, Spring Security, etc.)
- Experience with distributed systems monitoring and troubleshooting
Benefits
- Comprehensive medical, dental, vision, life and disability plans for eligible employees and their dependents
- Free testing in addition to fertility care benefits
- Pregnancy and baby bonding leave
- 401k benefits
- Commuter benefits
- Generous employee referral program
- Remote USA
Share this job:
Similar Remote Jobs
- πArgentina
- πGermany
- π°$165k-$195kπWorldwide
- π°$175k-$225kπWorldwide
- πGermany
- π°$175k-$210kπUnited States, Worldwide
- π°$185k-$223kπUnited States
- πPortugal
- π°$169k-$240kπUnited States
- π°$225k-$255kπUnited States