Senior Embedded Software Engineer
Beverly, Massachusetts
Hybrid
Full Time
$120k - $160k
Our Client is a leading technology company focused on developing cutting-edge image processing systems for a variety of industries, including healthcare, automotive, and security. They are currently looking for a Senior Software Engineer with expertise in C++ to join their dynamic and growing team.
- Design, develop, and optimize image processing algorithms and systems using C++.
- Collaborate with cross-functional teams to define software requirements and deliver high-quality solutions.
- Analyze and improve the performance, scalability, and reliability of image processing systems.
- Implement state-of-the-art computer vision techniques to enhance the capabilities of the products.
- Ensure code quality through code reviews, unit testing, and adherence to best practices.
- Mentor junior engineers and provide guidance on technical challenges.
- Stay up-to-date with the latest advancements in image processing technologies and contribute to the continuous improvement of the engineering team.
- Bachelor's or Master's degree in Computer Science, Engineering, or related field (or equivalent experience).
- 5+ years of professional experience in C++ development.
- Strong experience in image processing, computer vision, and related algorithms.
- Expertise in optimizing software for performance, memory usage, and computational efficiency.
- Familiarity with image processing libraries such as OpenCV, ITK, or similar.
- Solid understanding of multi-threading, concurrency, and system-level programming.
- Proficiency with version control systems such as Git and modern software development practices.
- Strong problem-solving skills and the ability to work independently and as part of a team.
- Excellent communication skills to collaborate effectively with stakeholders.
- Experience with GPU programming and parallel computing.
- Familiarity with machine learning frameworks and their application to image processing.
- Knowledge of real-time systems and low-latency processing.
- Exposure to cloud-based architectures and distributed systems.