Software Development Principal Engineer

Waters CorporationJob LocationsPrincipal
ActiveVerified 1h ago

Job description

Overview

We are seeking a Software Development Principal Engineer to contribute to the development and maintenance of our product, continuously grow technical expertise, and actively participate in agile team sprints to deliver high-quality software solutions.We are seeking a Software Development Principal Engineer to contribute to the development and maintenance of our product, continuously grow technical expertise, and actively participate in agile team sprints to deliver high-quality software solutions.We are seeking a Software Development Principal Engineer to contribute to the development and maintenance of our product, continuously grow technical expertise, and actively participate in agile team sprints to deliver high-quality software solutions.

We are seeking a Software Development Principal Engineer to contribute to the development and maintenance of our product, continuously grow technical expertise, and actively participate in agile team sprints to deliver high-quality software solutions.

We are seeking a Software Development Principal Engineer to contribute to the development and maintenance of our product, continuously grow technical expertise, and actively participate in agile team sprints to deliver high-quality software solutions.

Responsibilities

Role specific:Enhance and sustain a Windows-based client-server application, including development and maintenance of unit tests and, where applicable, automated UI tests.Collaborate with cross-functional teams to architect, design, document and implement quality solutions.Work independently and as part of a team with deep focus on hard technical problems and explain the why, how, and what, that makes your solution technically sound, provide constructive feedback regarding best practices, performance, and maintainability.Ensure code quality by using static and dynamic code analysis tools; generating, participating and offering relevant feedback on code reviews; identifying and eliminating technical debt; gather and analyze metric results.Lead refinement meetings to ensure stories are understood and decomposed adequately.Stay ahead of the curve with respect to new technologies and techniques with an eye towards continual improvement of both the team’s skill set and the product goals.Continuously improve and refine the build and deployment process.Develop and improve our monitoring and observability tooling.Empower and enable the delivery team by helping them help themselves.Actively participate in learning and sharing activities either during informal or formal training. Work with the team to harmonize process and practice where appropriate.Comply with all company policies and procedures and system requirements. Individual:Maintain the effectiveness of the Quality system at the sites via adherence to applicable policies and procedures.Complete Quality System related actions in a timely manner according to procedures e.g. CAPA, NCRAdhere to Environmental, Health and Safety policies and procedures.Role specific:Enhance and sustain a Windows-based client-server application, including development and maintenance of unit tests and, where applicable, automated UI tests.Collaborate with cross-functional teams to architect, design, document and implement quality solutions.Work independently and as part of a team with deep focus on hard technical problems and explain the why, how, and what, that makes your solution technically sound, provide constructive feedback regarding best practices, performance, and maintainability.Ensure code quality by using static and dynamic code analysis tools; generating, participating and offering relevant feedback on code reviews; identifying and eliminating technical debt; gather and analyze metric results.Lead refinement meetings to ensure stories are understood and decomposed adequately.Stay ahead of the curve with respect to new technologies and techniques with an eye towards continual improvement of both the team’s skill set and the product goals.Continuously improve and refine the build and deployment process.Develop and improve our monitoring and observability tooling.Empower and enable the delivery team by helping them help themselves.Actively participate in learning and sharing activities either during informal or formal training. Work with the team to harmonize process and practice where appropriate.Comply with all company policies and procedures and system requirements. Individual:Maintain the effectiveness of the Quality system at the sites via adherence to applicable policies and procedures.Complete Quality System related actions in a timely manner according to procedures e.g. CAPA, NCRAdhere to Environmental, Health and Safety policies and procedures.Role specific:Enhance and sustain a Windows-based client-server application, including development and maintenance of unit tests and, where applicable, automated UI tests.Collaborate with cross-functional teams to architect, design, document and implement quality solutions.Work independently and as part of a team with deep focus on hard technical problems and explain the why, how, and what, that makes your solution technically sound, provide constructive feedback regarding best practices, performance, and maintainability.Ensure code quality by using static and dynamic code analysis tools; generating, participating and offering relevant feedback on code reviews; identifying and eliminating technical debt; gather and analyze metric results.Lead refinement meetings to ensure stories are understood and decomposed adequately.Stay ahead of the curve with respect to new technologies and techniques with an eye towards continual improvement of both the team’s skill set and the product goals.Continuously improve and refine the build and deployment process.Develop and improve our monitoring and observability tooling.Empower and enable the delivery team by helping them help themselves.Actively participate in learning and sharing activities either during informal or formal training. Work with the team to harmonize process and practice where appropriate.Comply with all company policies and procedures and system requirements. Individual:Maintain the effectiveness of the Quality system at the sites via adherence to applicable policies and procedures.Complete Quality System related actions in a timely manner according to procedures e.g. CAPA, NCRAdhere to Environmental, Health and Safety policies and procedures.

Role specific:

Role specific:Role specific:
  • Enhance and sustain a Windows-based client-server application, including development and maintenance of unit tests and, where applicable, automated UI tests.
Enhance and sustain a Windows-based client-server application, including development and maintenance of unit tests and, where applicable, automated UI tests.
  • Collaborate with cross-functional teams to architect, design, document and implement quality solutions.
Collaborate with cross-functional teams to architect, design, document and implement quality solutions.
  • Work independently and as part of a team with deep focus on hard technical problems and explain the why, how, and what, that makes your solution technically sound, provide constructive feedback regarding best practices, performance, and maintainability.
Work independently and as part of a team with deep focus on hard technical problems and explain the why, how, and what, that makes your solution technically sound, provide constructive feedback regarding best practices, performance, and maintainability.
  • Ensure code quality by using static and dynamic code analysis tools; generating, participating and offering relevant feedback on code reviews; identifying and eliminating technical debt; gather and analyze metric results.
Ensure code quality by using static and dynamic code analysis tools; generating, participating and offering relevant feedback on code reviews; identifying and eliminating technical debt; gather and analyze metric results.
  • Lead refinement meetings to ensure stories are understood and decomposed adequately.
Lead refinement meetings to ensure stories are understood and decomposed adequately.
  • Stay ahead of the curve with respect to new technologies and techniques with an eye towards continual improvement of both the team’s skill set and the product goals.
Stay ahead of the curve with respect to new technologies and techniques with an eye towards continual improvement of both the team’s skill set and the product goals.
  • Continuously improve and refine the build and deployment process.
Continuously improve and refine the build and deployment process.
  • Develop and improve our monitoring and observability tooling.
Develop and improve our monitoring and observability tooling.
  • Empower and enable the delivery team by helping them help themselves.
Empower and enable the delivery team by helping them help themselves.
  • Actively participate in learning and sharing activities either during informal or formal training.
Actively participate in learning and sharing activities either during informal or formal training.
  • Work with the team to harmonize process and practice where appropriate.
Work with the team to harmonize process and practice where appropriate.
  • Comply with all company policies and procedures and system requirements.
Comply with all company policies and procedures and system requirements.

Individual:

Individual:Individual:
  • Maintain the effectiveness of the Quality system at the sites via adherence to applicable policies and procedures.
Maintain the effectiveness of the Quality system at the sites via adherence to applicable policies and procedures.
  • Complete Quality System related actions in a timely manner according to procedures e.g. CAPA, NCR
Complete Quality System related actions in a timely manner according to procedures e.g. CAPA, NCR
  • Adhere to Environmental, Health and Safety policies and procedures.
Adhere to Environmental, Health and Safety policies and procedures.

Qualifications

Qualifications/Education required:Bachelor’s degree or higher (or equivalent) in science, computing engineering subjects. Experience required:14-16+ years of software development experience with strong expertise in Windows-based application development using C# and .NET technologies.Minimum 5+ years of experience in the Life Sciences and Healthcare domain, with expertise in developing software applications that interface with and control hardware systems.Should have knowledge in C++.Experience designing, developing, leading technical discussions, mentoring engineering teams, and driving end-to-end product development.Strong understanding of Object-Oriented Design (OOD), Design Patterns and SOLID principles.Experience with TDD, CI/CD pipelines, GitHub, and secure coding practices.Experience in use of AI in code developmentProven understanding and application of technical standards. Experience of working with a recognised quality system.Aptitude skills:Excellent communication and collaboration skills. Excellent interpersonal skills. Proven ability to work as part of a teamAbility to analyze, solve complex technical problems and to mentor others.Qualifications/Education required:Bachelor’s degree or higher (or equivalent) in science, computing engineering subjects. Experience required:14-16+ years of software development experience with strong expertise in Windows-based application development using C# and .NET technologies.Minimum 5+ years of experience in the Life Sciences and Healthcare domain, with expertise in developing software applications that interface with and control hardware systems.Should have knowledge in C++.Experience designing, developing, leading technical discussions, mentoring engineering teams, and driving end-to-end product development.Strong understanding of Object-Oriented Design (OOD), Design Patterns and SOLID principles.Experience with TDD, CI/CD pipelines, GitHub, and secure coding practices.Experience in use of AI in code developmentProven understanding and application of technical standards. Experience of working with a recognised quality system.Aptitude skills:Excellent communication and collaboration skills. Excellent interpersonal skills. Proven ability to work as part of a teamAbility to analyze, solve complex technical problems and to mentor others.Qualifications/Education required:Bachelor’s degree or higher (or equivalent) in science, computing engineering subjects. Experience required:14-16+ years of software development experience with strong expertise in Windows-based application development using C# and .NET technologies.Minimum 5+ years of experience in the Life Sciences and Healthcare domain, with expertise in developing software applications that interface with and control hardware systems.Should have knowledge in C++.Experience designing, developing, leading technical discussions, mentoring engineering teams, and driving end-to-end product development.Strong understanding of Object-Oriented Design (OOD), Design Patterns and SOLID principles.Experience with TDD, CI/CD pipelines, GitHub, and secure coding practices.Experience in use of AI in code developmentProven understanding and application of technical standards. Experience of working with a recognised quality system.Aptitude skills:Excellent communication and collaboration skills. Excellent interpersonal skills. Proven ability to work as part of a teamAbility to analyze, solve complex technical problems and to mentor others.

Qualifications/Education required:

Qualifications/Education required:Qualifications/Education required:
  • Bachelor’s degree or higher (or equivalent) in science, computing engineering subjects.
Bachelor’s degree or higher (or equivalent) in science, computing engineering subjects.

Experience required:

Experience required:Experience required:
  • 14-16+ years of software development experience with strong expertise in Windows-based application development using C# and .NET technologies.
14-16+ years of software development experience with strong expertise in Windows-based application development using C# and .NET technologies.
  • Minimum 5+ years of experience in the Life Sciences and Healthcare domain, with expertise in developing software applications that interface with and control hardware systems.
Minimum 5+ years of experience in the Life Sciences and Healthcare domain, with expertise in developing software applications that interface with and control hardware systems.
  • Should have knowledge in C++.
Should have knowledge in C++.
  • Experience designing, developing, leading technical discussions, mentoring engineering teams, and driving end-to-end product development.
Experience designing, developing, leading technical discussions, mentoring engineering teams, and driving end-to-end product development.
  • Strong understanding of Object-Oriented Design (OOD), Design Patterns and SOLID principles.Experience with TDD, CI/CD pipelines, GitHub, and secure coding practices.
Strong understanding of Object-Oriented Design (OOD), Design Patterns and SOLID principles.Experience with TDD, CI/CD pipelines, GitHub, and secure coding practices.
  • Experience in use of AI in code development
Experience in use of AI in code development
  • Proven understanding and application of technical standards.
Proven understanding and application of technical standards.
  • Experience of working with a recognised quality system.
Experience of working with a recognised quality system.

Aptitude skills:

Aptitude skills:Aptitude skills:
  • Excellent communication and collaboration skills.
Excellent communication and collaboration skills.
  • Excellent interpersonal skills.
Excellent interpersonal skills.
  • Proven ability to work as part of a team
Proven ability to work as part of a team
  • Ability to analyze, solve complex technical problems and to mentor others.
Ability to analyze, solve complex technical problems and to mentor others.

Similar jobs