Sr Software Developer

CH-Vernier

International Careers

Req #: 22058
logo

Waters Corporation

Connect With Us:
Connect To Our Company
				Overview:

Waters Corporation is seeking a Software Developer to join our Software Team in Geneva, Switzerland. This position offers a unique opportunity to work closely with real robotic systems, developing software that bridges low-level hardware control with high-level web services. The ideal candidate is an out-of-the-box thinker with deep expertise in C++ and Linux programming, eager to tackle complex challenges in a fast-paced, creative environment. This role involves working at the intersection of firmware, networking, and software, contributing to the next generation of automated laboratory solutions.

Responsibilities:

* Design, develop, and optimize low-level software interfacing with both hardware components and cloud/web services.
* Implement multi-threaded C++ applications running close to the Linux kernel to ensure real-time performance.
* Develop and debug software for hardware communication using CAN bus, serial communication, and TCP/IP sockets.
* Work with gRPC, Bluetooth LTE, and networking protocols to expand device connectivity.
* Perform advanced debugging and profiling using tools like gdb and Valgrind.
* Write and maintain Bash scripts for automation tasks.
* Collaborate with a cross-functional team to design scalable, high-performance software for robotic systems.
* Work daily with vim and git, maintaining efficient version control and development practices.
* Read, write, and maintain documentation, ensuring clarity and completeness for future development and troubleshooting.

Qualifications:

* Extensive experience with C++11, C, and Bash scripting in Linux environments; strong understanding of the importance of well-documented code and the discipline to maintain it.
* Strong knowledge of multi-threaded programming and system-level software development
* Experience developing software that interfaces with hardware components.
* Strong debugging and profiling skills with gdb, Valgrind, and other analysis tools.
* Familiarity with Boost, OpenCV and gRPC.
* Comfortable working in a resource-constrained embedded environment.
* Capability to follow and adhere to code-style guidelines, ensuring consistency and readability across the codebase.
* Expertise in Linux networking (experience with netcat, nmap, nmcli required) is a plus.
			
Share this job: