Senior Embedded Software Engineer (C/C++)

Block Engineering is a developer of lasers and chemical detection systems for safety, security, and life sciences applications. Block is the proud winner of two Photonics West Prism Awards and the Milipol Paris Innovation Award. The company is headquartered in Southborough, Massachusetts in the greater Boston metro area.

We are seeking an experienced Senior Embedded Software Engineer to join our team and contribute to the development of our laser-based detection systems. This role requires demonstrated expertise in C/C++ programming for embedded Linux environments and a strong understanding of system-level software development.

Responsibilities will include:

  • Design, develop, and maintain embedded software applications in C/C++ for ARM-based Linux systems
  • Develop Python-based tools and utilities to support embedded software development
  • Work with Xilinx development tools and ARM-based hardware platforms
  • Design and implement TCP/IP networking solutions and APIs for embedded systems
  • Manage code repositories using Git flow and GitHub
  • Build and maintain software using Make/CMake build systems
  • Participate in project planning and tracking using GitHub Issues/Projects and Atlassian Jira

The ideal candidate will have the following qualifications:

  • Expert-level proficiency in C/C++ programming in an embedded Linux environment
  • Bachelor's degree in Computer Science, Electrical Engineering, or equivalent experience
  • Strong experience with embedded Linux development on ARM-based systems. Hands-on experience with Xilinx development tools and workflows (Zynq SOCs) would be ideal, but not required.
  • Experience with Python for tool development and automation
  • Solid understanding of TCP/IP networking protocols and implementation
  • Experience designing and building APIs for embedded systems
  • Proficiency with Git version control and GitHub workflows (Git flow)
  • Experience with project management tools (GitHub Issues/Projects, Atlassian Jira)
  • Experience with Make and CMake build systems

Any of the following qualifications would be a plus:

  • Experience with web-based front ends in React/Angular/Vue
  • Experience with Raspberry Pi management, development and deployment
  • Proficiency in Qt framework for developing embedded and PC user interfaces
  • Knowledge of hardware debugging tools and techniques
  • Experience with continuous integration/continuous deployment (CI/CD) pipelines
  • Understanding of software testing frameworks and methodologies
  • Experience with cross-compilation and embedded toolchains

To apply, please email resumes to careers@blockeng.com. Thank you for your interest.