Embedded Software Engineer 3 at Monarch Quantum
San Diego, California, United States -
Full Time


Start Date

Immediate

Expiry Date

03 May, 26

Salary

175000.0

Posted On

02 Feb, 26

Experience

5 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

C++, Embedded Systems, Linux, Containerization, TCP/IP, UDP, Serial Communication, USB, SDK Integration, API Design, Unit Testing, Version Control, Problem Solving, CMake, Multi-threaded Programming, Software Best Practices

Industry

Computers and Electronics Manufacturing

Description
Join our fast-paced and passionate team as a Senior Embedded Software Engineer 3. As we scale, you will be instrumental in building our foundation from the ground up. This is a dynamic, hands-on role for a self-starter who thrives in a fluid startup environment. You'll have the opportunity to work on cutting-edge technologies, work closely with leadership, and develop and implement engineering practices that support our mission and growth. Your key responsibilities are as follows: Design and develop a containerized Linux application that serves as a centralized control system for multiple laboratory instruments. Implement robust communication interfaces for diverse instrumentation including fiber amplifiers, laser controllers, DACs, and other precision electronics. Develop software that interfaces with hardware devices over multiple protocols including UDP/TCP sockets, serial communication, USB, and vendor-provided SDKs. Design and implement network communication interfaces to enable remote instrument control and monitoring. Collaborate with stakeholders to develop and refine system requirements and translate them into technical specifications. Architect scalable, maintainable software solutions that accommodate evolving requirements and future instrument additions. Write comprehensive unit and integration tests to ensure system reliability and robustness. Develop and maintain clear technical documentation including API specifications, system architecture diagrams, and integration guides. Collaborate with cross-functional teams, including hardware engineers, scientists, and other software engineers. Participate in code reviews, provide constructive feedback, and adhere to best coding practices. Work independently and in a team while over-communicating with the manager, project engineer, and teammates. Use tenacity, patience, self-discipline, and passion for excellence to assure accuracy of execution schedule, data quality/integrity, conformance to company best practices, clarity in communication, and documentation. Use every opportunity to grow competency through mentorship, curiosity, communication, exposure, and initiative. This position requires access to export-controlled information. Employment is contingent upon the applicant being a U.S. person as defined by 8 U.S.C. § 1324b(a)(3). Experience: A bachelor’s degree in Software Engineering, Computer Engineering, or a related field. Minimum of 5 years of relevant experience, ideally within a startup or technology company. Skills: 5+ years of professional experience in C++ software development for embedded or instrumentation systems. Strong understanding of modern C++ (C++14/17/20). Proven experience developing software for Linux environments, including containerization with Docker. Hands-on experience with multiple communication protocols: TCP/IP, UDP, serial (RS-232/RS-485), USB, and SDK integration. Experience designing network-based APIs or control interfaces. Demonstrated ability to work with hardware interfaces and understand datasheets, communication specifications, and timing requirements. Experience with requirements gathering, system design, and architectural decision-making. Familiarity with unit testing frameworks, preferably Google Test or similar. Experience working with version control systems (Git). Strong problem-solving skills and ability to work independently and in a team. Experience with CMake or similar build systems for C++ projects. Familiarity with multi-threaded programming and concurrency in C++. Knowledge of software best practices, including design patterns, SOLID principles, and performance optimization. Startup Mindset: You're creative, flexible, and eager to wear multiple hats. You're passionate about building systems from the ground up and comfortable with ambiguity and change. The expected annual salary range for this position is $125,000-$175,000. As a full-time employee, you will be eligible for Monarch’s comprehensive benefits package, which includes: Medical, Dental, and Vision insurance Fidelity 401(k) plan with 4% employer matching 20 paid time off (PTO) days per year 13 paid company holidays 9/80 work schedule (every other Friday off) Monarch Quantum is proud to be an equal opportunity employer and does not discriminate on the basis of race, color, citizenship status, national origin, ancestry, sex, sexual orientation, age, religion, creed, physical or mental disability, medical condition, marital status, veteran status or any other characteristics protected under applicable federal, state and local laws.
Responsibilities
Design and develop a containerized Linux application for laboratory instruments and implement robust communication interfaces. Collaborate with stakeholders to refine system requirements and ensure system reliability through comprehensive testing.
Loading...