POSITION SUMMARY
At Natera, we revolutionize the world of medicine by developing genetic products that combine cutting-edge technology and science. On top of that we want to accelerate the breakthroughs in research to improve care by offering our unique genomic and clinical data.
We are looking for a skilled, driven and adaptable Software Engineer to join the team. An ideal candidate for this position would have experience in developing products of medium to high complexity and have production support experience.
No biology background is required but this is an excellent opportunity for a strong Software Engineer to bring their skills and expertise to the Life Science Industry.
PRIMARY RESPONSIBILITIES
- Perform system analysis, assess risk, provide estimations and develop technical design and implementation strategies.
- Perform debugging and root cause analysis of product issues or defects.
- Develop code and unit tests for Natera’s custom Laboratory Information Management System (LIMS) and other software components.
- Perform code reviews.
- Work closely with product owners and users to define requirements and transform them into reliable and extensible operations-friendly features.
- Create and maintain comprehensive software specifications based on the requirements.
- Work closely with developers, quality engineers and product managers in all phases of SDLC to build quality into our development process.
- This role works with Protected Health Information (PHI) on a regular basis both in paper and electronic form and has access to various technologies to access PHI (paper and electronic) in order to perform the job.
- You must complete training relating to HIPAA/PHI privacy, General Policies and Procedure Compliance training and security training as soon as possible but not later than the first 30 days of hire.
- You must maintain a current status on Natera training requirements.
QUALIFICATIONS
- Minimum of 5 years of experience testing both server-side and front-end functionality of complex n-tier systems.
- BS degree in Computer Science or equivalent work experience.
- Recent hands-on experience with Java, preferably using open-source frameworks such as Spring Frameworks.
- Experience with Groovy and Python.
- Hands on experience working and developing REST API.
- Extensive working knowledge of relational databases, excellent in SQL.
- Strong knowledge of Linux and command line shell scripting.
- Experience working with Production Support is a plus.
- Healthcare IT experience is beneficial, but not required.
KNOWLEDGE, SKILLS, AND ABILITIES
- Solution and improvement oriented mindset: proactivity in trouble-shooting.
- Strong communication skills.
- Willingness and ability to learn new practices, languages, and subject matter.
- Excellent understanding of software engineering principles: Object-Oriented Programming (OOP), SOLID, and more.
- Experience with containers (i.e.: Docker, Kubernetes).
- Experience with distributed version control systems (e.g. Gitlab) and familiarity with various branching strategies.
- Experience with message broker/queue (i.e. Apache Kafka, AWS SQS) is a plus.
- Experience with JSP and JS is preferred.
- Experience with software life cycle management tools (i.e. Jira).
- Willingness and ability to work with people across multiple time zones.
- Experience developing software in a regulated environment is a plus.
PHYSICAL DEMANDS & WORK ENVIRONMENT
- Duties are typically performed in an office setting - remote / at-home currently.
- Working with remote teams in different time zones.
- The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job.
- While performing the duties of this job, the employee is regularly required to talk or hear.