Software Engineer (Early Career) – C++ & Systems
sirenoptSan Leandro, CA
$120,000 per yearAPPLY NOW (opens in a new tab)
Software Engineer (Early Career) – C++ & Systems
sirenoptSan Leandro, CA
4 days ago
Industries
Software PublishersCustom Computer Programming ServicesResearch and Development in the Physical, Engineering, and Life Sciences$120,000 per year
APPLY NOW (opens in a new tab)About the role
Software Engineer (Early Career) – C++ & Systems SirenOpt is seeking a Software Engineer to help build and maintain the real-time data pipeline behind our sensing platform: acquiring data from multiple sensors, processing and storing it on Linux-based systems, and delivering it to the applications our customers rely on. You will work primarily in modern C++ and Python, with mentorship from senior engineers, and you will be hands-on with real hardware in our lab to test and validate what you build. This is a role for someone who wants to grow into a well-rounded systems engineer by shipping production software end to end, from a first design discussion to a feature running at a customer site.
Responsibilities include:
- Develop and maintain software components in modern C++ (C++17/20) for Linux-based systems, with guidance from senior engineers
- Implement features, fix bugs, and write unit and integration tests across the data pipeline, from sensor acquisition through processing and storage to the services that deliver results to applications
- Write and maintain Python scripts for automation, testing, and data analysis
- Read, and where needed modify, existing code written in other languages across our codebase
- Use AI coding tools (e.g., Claude Code, GitHub Copilot) to accelerate development, and verify their output through testing, profiling, and code review
- Run the system on real hardware in the lab to test and validate your changes, including setting up sensors and collecting data
- Participate in code reviews, both receiving and giving feedback, and follow team conventions for code quality
- Help diagnose and debug issues across software and hardware boundaries, working with firmware and hardware engineers
- Measure and improve performance of existing code under the direction of senior engineers
- Document your work so that others on the team can build on itWe're looking for candidates with:
- Bachelor's or Master's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related technical field (recent graduates welcome)0–2 years of professional software development experience; internships, co-ops, research, and substantial personal or open-source projects count
- Solid foundation in C++, including memory management, references and pointers, the standard library, and basic object-oriented and generic programming
- Strong ability to read, understand, and write Python, including working within existing Python codebases used for automation, testing, and data analysis
- Ability to pick up new programming languages quickly; our codebase spans several languages and you will need to read, and occasionally modify, code outside of C++ and Python
- Understanding of core computer science fundamentals: data structures, algorithms, operating systems, and concurrency basics
- Comfortable with the everyday toolchain: Linux command line, build tools (CMake or similar), a debugger, and Git-based workflows (branches, pull requests, code review)
- Hands-on experience using AI coding tools (e.g., Claude Code, GitHub Copilot, Cursor) as part of a real development workflow, and the judgment to review and test what they produce
- Comfortable working hands-on with lab and test equipment: setting up sensors, running the system on real hardware, and collecting data for testing and validation (we will train you on our specific equipment)
- Clear written and verbal communication, and the ability to work well with teammates across disciplines
Nice to have:
- Experience with Qt, gRPC, or Protocol Buffers
- Familiarity with CI/CD pipelines and automated testing
- Experience with profiling and debugging tools such as perf, Valgrind, GDB, or sanitizers
- Familiarity with hardware communication interfaces such as Ethernet, USB, or Serial
- Contributions to open-source projects
- You will learn:
- How a high-throughput, multi-sensor data pipeline is built end to end, from acquisition through processing and storage, and kept reliable in production
- Modern C++ and Linux systems engineering, with regular code review and mentorship from senior engineers
- How software, firmware, and hardware teams work together to ship a physical product
- How to use AI coding tools effectively and responsibly in a professional engineering workflow
- A clear path to grow into a mid-level engineer with ownership of your own components
- Base Pay Range $120,000 —$160,000 USD
Benefits:
- Equity and Salary compensation depends on experience
- Health, Dental, Vision plans provided 401k matching provided
- Time off: 20 days of PTO per year, plus approximately 15 paid US holidays per year
Matching similar jobs
JOB OVERVIEW
Salary
$120,000 per year
Experience level
Intern
Location
San Leandro, CA
Occupation
Software Developers
Industry
Software Publishers
Posted
4 days ago
Tired of running searches?
Rank the roles you'd take once, and matches like these arrive on their own.
CREATE PROFILE (opens in a new tab)