About the role
AI summarisedThis is an entry-level Embedded Systems Engineer role focused on developing firmware and embedded software for Agilent's Mass Spectrometry instruments. The position involves designing, coding, testing, and debugging software throughout the product lifecycle, working closely with cross-functional teams of engineers and scientists. The role emphasizes hands-on learning and mentorship to build practical skills in embedded systems development.
Life SciencesOnsite
Key Responsibilities
- Designs, develops, tests and debugs software programs, products and tools required for the operation and control of programmable products and systems
- Programs for dedicated Agilent products through the entire product life cycle from customer requirement definition to product shipment and post-sales support
- Develops algorithms to align and calibrate equipment
- Designs and executes test plans to ensure new firmware meets specifications, functionalities and performance requirements
- Works closely with a cross-disciplinary team of software engineers, firmware engineers, mechanical and electrical engineers and scientists to create complete instrument systems
- Monitors industry trends for technological evolutions and leverages appropriate technology
- Incorporates proper cybersecurity practices throughout development stages
- Works well independently and collaboratively while balancing long-term development activities with time-sensitive assignments
Requirements
- Bachelor's or Master's Degree or equivalent in Computer Science, Computer Engineering, or a related technical field
- Strong understanding of software engineering principles using C++ and/or C
- Strong understanding of Real Time Operating Systems (RTOS)
- Strong understanding of concurrent programming
- Embedded Linux development experience
- System on Chip (SoC) experience
- Excellent debugging and troubleshooting skills
- Experience with version control tools (e.g., Git, ClearCase)
- Integration of third-party libraries, software, or development tools
- Additional programming skills in Assembly, Python, C#, or Java
- Understanding of FPGA interfacing
- Knowledge of Object-Oriented Analysis and Design (OOAD) principles
- Familiarity with databases and SQL
- Understanding of Agile or Waterfall development methodologies