Senior Embedded Software Engineer

908 DevicesBurlington, MA
2dOnsite

About The Position

This position, based in our Burlington, MA office, offers a unique opportunity to collaborate with world-class engineers and scientists developing groundbreaking products for chemical detection. In this role, you will design and develop embedded software that controls sophisticated electromechanical instruments operating under real-time and near-real-time constraints. A systems-level mindset and the ability to read and understand circuit schematics are important for success. To achieve our ambitious goals, we develop software using a variety of programming languages, tools, and frameworks, selecting the best technologies for each challenge. While experience in every technology we use is not required, a strong desire to learn and adapt is essential. Our culture is built on continuous learning, where innovation is encouraged and coworkers and leaders actively support professional growth and new ideas. AI assistants are becoming a standard part of engineering workflows, and you should be open to and comfortable leveraging these tools to improve efficiency while maintaining quality, accuracy, and security. If you enjoy working at the leading edge of technology and collaborating with talented teams to build state-of-the-art software, you will find strong opportunities to excel and grow with us.

Requirements

  • A dedicated, detail-oriented professional with a strong sense of ownership and a focus on driving tasks to completion
  • An extensive background in contributing to and collaborating on systems engineering aspects of highly integrated software driven electro-mechanical devices
  • A history of designing and programming multi-threaded embedded software
  • Experience with software architecture formulation and assessment, and software technology selection for new products
  • A strong grasp of professional development concepts such as best practice coding standards, source control, automated build environments and project management/bug tracking software
  • Experience working in an environment that included processes and techniques that drive software quality throughout the full product development lifecycle such as static analysis, code reviews, unit tests, functional tests and test automation
  • Strong working knowledge of common programming languages, including C and C++ and associated development environments on Windows and Linux
  • Strong written and verbal communication skills
  • Strong grasp of Object-Oriented programming concepts and their proper use
  • Experience working with hardware designers to achieve optimum system performance
  • Experience writing documentation that captures software architecture, design philosophy, design requirements and specifications
  • BS in Computer Science, Electrical or Computer Engineering or equivalent
  • A minimum of 8 years of experience in software engineering with direct responsibility for low-level system development, including hardware interfacing, I/O control, peripheral setup and integration, and system-level debugging

Nice To Haves

  • Experience with Python and other high-level languages is a plus
  • Experience with Qt/QML and/or low-level Yocto modifications is a plus

Responsibilities

  • Collaborate with peers from across the organization to refine requirements for new products and features and work with a cross-functional team on implementation
  • Contribute to the ongoing maintenance of our suite of best-in-class products
  • Support our drive to improve our quality and reliability by enhancing our standards and best practices
  • Develop close working relationships with adjacent RnD teams including electrical engineering, manufacturing and algorithm development
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service