Embedded Software Engineer
Location: Cambridge, MA
Type: Full Time
We are seeking an Embedded Software Engineer to join our hardware development team. The ideal candidate has strong skills in embedded software architecture, design, and implementation on resource constrained, robotic-like systems.
He or she must demonstrate high competency in low-level chip configuration including memory utilization, code security, bootloading, system time management, sensor sampling/conditioning, and inter-processor communications.
Additionally, the ideal candidate must be able to work in a small team where personal interactions are critical to timely decisions and knowledge sharing. He or she must also have the ability to handle concurrent fast paced projects, be an aggressive self-starter requiring minimal direction, and be willing to do whatever is needed to make a project a success.
- To be responsible for bringing software functions through the entire development process (write requirements, develop concepts and prototypes, perform detailed analysis, design, and implementation work, and conduct module and system level review, test, and release).
- To collaborate closely with the embedded hardware team to specify module and system requirements and design.
- BS CS/EE with 5+ years experience or MS CS/EE with 3+ years of industry experience developing embedded software systems
- Experience developing software for commercial use, familiarity with software product life cycle including the support of fielded product
- Expert programming skills in C/C++
- Experience in embedded software development for either Battery Management Systems (BMS) OR cellular communications (LTE, 4G, 5G, 802.11, etc).
- Ability to write PC based tools and applications for the development, debug, and test of embedded systems
- Experience with scripting languages
- Experience with revision control systems