Senior Software Engineer

Logo of Natera

Natera

πŸ’΅ $118k-$147k
πŸ“Remote - United States

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:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.