Staff Software Engineer – Embedded Software
We are the makers of possible. BD is one of the largest global medical technology companies in the world, advancing the world of health™ through transformative solutions. Join us and discover an environment where you’ll be supported to learn, grow, and become your best self.
About the role
Waters is a global leader in life sciences, dedicated to accelerating the benefits of pioneering science through analytical technologies, informatics, and service. With a focus on regulated, high-volume testing environments, Waters’ innovative portfolio harnesses deep scientific expertise across biology, chemistry, and physics. We collaborate with analytical laboratories worldwide to advance the release of effective, high-quality medicines, ensure the safety of food and water, and improve patient outcomes by detecting diseases earlier and combating growing antibiotic resistance.
This role requires a minimum of 4 days of in-office presence per week at our Sparks, MD location to maintain our culture of excellence and ensure smooth operations.
Responsibilities
- Design, develop, and maintain Angular web applications using modern architecture and best practices
- Develop reusable UI components and integrate front-end applications with backend APIs and services
- Design and maintain desktop applications using WPF and MVVM design patterns
- Participate in application modernization initiatives including migration and enhancement efforts
- Work closely with firmware, electrical, and systems engineers to define and implement integrated solutions
- Integrate firmware functionality into application software through APIs, drivers, and communication interfaces
- Work with the team to establish necessary requirements specifications and test plans for software product validations
- Translate requirements into design and implementation of well-structured and documented software components
- Implement new software component designs or enhancements to existing software products; participate in the implementation of more complex subsystems and systems
- Troubleshoot and debug issues within existing automation systems and implement modifications to resolve these issues
- Participate in technical design reviews and code inspections
- Ensure adherence to BDDS development policies and procedures
- Ensure compliance with regulatory requirements including 21 CFR part 11, BD quality standards, and convey an expectation of high-quality software
Requirements
- BS degree in Computer Science, Computer Engineering, Mathematics, Physics, or a related Engineering discipline
- Minimum of 10 years of experience in software development through the entire product life cycle to develop commercial products
- Minimum of 6 years of experience designing and implementing with C#
- Minimum of 5 years of experience with SQL/Database in a .NET development environment
- Experience with Angular 18 development including component architecture, services, routing, state management, API integration, and responsive UI development
- Experience with desktop application development using WPF and MVVM architecture
- Experience with IIS administration and application deployment
- Experience designing and maintaining Azure DevOps CI/CD pipelines
- Demonstrated understanding of multi-threaded software design and development
- Excellent written and oral communication and interpersonal skills
- Demonstrated understanding of development in a process-oriented/regulated environment and adhering to a quality management system
- Knowledge of automation/process control experience
- Understand motion control concepts
Skills
Nice-to-Haves:
- Motion controllers and automation hardware
- Serial communication protocols
- USB communication
- Ethernet/TCP-IP device communication
- CAN, SPI, I2C, or UART interfaces
- Hardware drivers and DLL development
- FPGA interaction
- Embedded C/C++
- Real-time systems concepts
- WinForms
Pay
At BD, we reward, support, and develop our associates through a comprehensive Total Rewards program. Our salary or hourly rate ranges are competitive and regularly reviewed to ensure fairness. Factors such as location, role requirements, and applicable labor laws or Collective Bargaining Agreements influence the range displayed. The salary or hourly rate offered is determined by the role’s specific requirements, including necessary skills and education.
Schedule
This role requires a minimum of 4 days of in-office presence per week.