Required Qualifications
Bachelor's degree or equivalent practical experience in Computer Engineering, Electrical Engineering, Computer Science, or a related field.
5+ years of professional experience developing embedded or firmware software.
Strong C++ programming skills, including object-oriented design, memory management, concurrency fundamentals, debugging, and writing maintainable production code.
Hands-on experience developing software that interacts with hardware, real-time systems, device interfaces, or resource-constrained embedded platforms.
Proven ability to learn unfamiliar technologies and codebases independently, break down ambiguous problems, and deliver results with minimal guidance.
Experience with embedded development and diagnostic tools, such as debuggers, emulators, protocol or logic analyzers, and system logs.
Experience with Linux-based development environments, source control systems such as Git, and build or container-based workflows.
Experience with continuous integration, automated testing, and disciplined software review practices.
Strong written and verbal communication skills, including the ability to explain technical decisions, raise risks, and collaborate across functions.