Sr. Embedded Developer
*Willing to relocate candidate to the Seattle, WA area
Digital Control Inc. is currently recruiting an experienced Embedded Software Engineer to join a small team to develop embedded software for Horizontal Direction Drilling equipment and instrumentation. As leaders in our industry, we use cutting-edge technology to provide an eco-system of hardware and software products to our customers. In this role, the individual must be familiar with software development for Linux using modern C++ preferably in an embedded environment. The ideal candidate has further experience, education, or interest in other areas of the embedded development stack ranging from firmware, driver or board support packages, to front-end user interface application development. The individual will work collaboratively within cross-functional teams that include Firmware Developers, SDETs, Electrical Engineers, Mechanical Engineers, R&D Engineers, Quality, UI/UX, and Product Management.
- Develop, unit test, integrate, benchmark, and document product-level embedded software.
- Collaborate with Software and Firmware Engineers to define the interaction between subsystems and components.
- Partner with other Engineers, Software Lead, Project Managers, and Product Managers to define the scope, acceptance criteria, and planning of software features.
- Work within and be accountable to Agile development processes as a member of an interdisciplinary product development team.
- Plan and estimate assigned tasks with input from Software Lead.
- 5+ years of software development experience.
- Strong proficiency with modern C++ is required (e.g. C++11 standard).
- Strong background in Linux, preferably Embedded Linux, and products utilizing open-source.
- Experience developing software for embedded devices.
- Solid software development fundamentals such as unit testing, build automation, branched based development, and modern documentation practices.
- S. degree in Computer Engineering, Computer Science, Electrical Engineering, or similar field from an accredited university is required.
- Experience with distributed software architectures and developing independent application services on Linux.
- Experience with Qt and QML, preferably in an embedded environment.
- Low-level embedded experience such as board-support packages, patching, driver integration, or firmware development.