Software Engineer

BPM Microsystems

Houston (TX)

On-site

USD 120,000 - 170,000

Full time

4 days ago
Be an early applicant
Application generator

A complete application in a minute — tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

BPM Microsystems in Houston, TX seeks a Software Engineer to develop and sustain software platforms and embedded systems behind our semiconductor programming and robotic automation products. You will work with Python, modern C++, firmware, CANopen, and TMCL across the full software lifecycle, collaborating across engineering disciplines to deliver solutions from concept to customer delivery.

The role emphasizes AI-assisted development, high-performance applications, and hands-on problem solving

Qualifications

  • Master’s degree or equivalent in CS/engineering.
  • Strong Python and C++ with production-grade experience.
  • Embedded firmware and hardware integration experience.
  • Experience with CAN/CANopen and TMCL.
  • Familiarity with REST/WebSocket APIs and service-oriented architectures.

Responsibilities

  • Design, develop, test, and maintain software platforms, Windows applications, firmware, and internal tools.
  • Develop Python applications and services that support robotic automation and hardware integration.
  • Build modern C++ applications and firmware for performance-sensitive systems.
  • Implement motion-control functionality using CAN bus and TMCL.
  • Integrate software with motors, drives, sensors, pick-and-place systems, and programming equipment.
  • Profile and optimize software for throughput, latency, memory, and concurrency.
  • Investigate customer/manufacturing issues and deliver permanent solutions.
  • Apply OOP/design principles for modular, maintainable software.
  • Develop and integrate WebSocket and REST APIs, backend services, and UI tooling.
  • Use AI-assisted development tools responsibly for implementation, testing, and documentation.
  • Participate in requirements analysis, technical design, code reviews, testing, and release planning.
  • Support CI/CD pipelines, reproducible builds, and production sustaining activities.
  • Collaborate with customers and cross-functional teams including electrical, mechanical, manufacturing, and support.

Skills

Python
C++
Embedded firmware
CAN/CANopen TMCL
REST/WebSocket APIs
AI-assisted tools
Git/Mercurial
Asyncio

Education

Master’s degree or Bachelor’s with relevant experience

Tools

Visual Studio
Git/Mercurial
CI/CD
ZeroMQ
Asyncio

Job description

BPM Microsystems develops advanced robotic systems used by electronics manufacturers worldwide to program flash memory devices and microcontrollers. Our technology combines software, embedded firmware, precision motion control, robotics, lasers, vacuum systems, and machine vision. Our customers operate across the automotive, aerospace, medical, industrial, and consumer-electronics industries. Billions of electronic products rely on devices programmed using BPM systems.

Job Summary

We are seeking a Software Engineer to develop and sustain the software platforms and embedded systems behind our semiconductor programming and robotic automation products. You will work primarily with Python, modern C++, firmware, CANopen, and TMCL. You will contribute throughout the software lifecycle—from requirements and system design through implementation, optimization, testing, release, and production support. The ideal candidate is an open-minded, hands-on problem solver who can quickly understand complex systems, collaborate across engineering disciplines, and carry solutions through to customer delivery. The role involves high AI usage and rapid software development.

Responsibilities
  • Design, develop, test, and maintain software platforms, Windows applications, firmware, and internal engineering tools.
  • Develop Python applications and services that support robotic automation, hardware integration, manufacturing, and product operations.
  • Build and maintain modern C++ applications and firmware for performance-sensitive and hardware-integrated systems.
  • Implement motion-control functionality using CAN bus and TMCL.
  • Integrate software with motors, drives, sensors, robotic pick-and-place systems, and semiconductor programming equipment.
  • Profile and optimize software for throughput, responsiveness, CPU and memory usage, concurrency, and long-term reliability.
  • Investigate customer and manufacturing issues, identify root causes across software, firmware, hardware, and communication interfaces, and deliver permanent solutions.
  • Apply OOP and design principles to create modular, maintainable, and testable software.
  • Develop and integrate WebSocket and REST APIs, backend services, user interfaces, and engineering tools.
  • Use AI-assisted development tools responsibly for implementation, testing, debugging, refactoring, and documentation.
  • Participate in requirements analysis, technical design, code reviews, automated testing, system validation, and release planning.
  • Support CI/CD pipelines, reproducible builds, configuration management, software releases, deployment, and post-release sustaining activities.
  • Collaborate with customers and with electrical, mechanical, manufacturing, applications, and technical-support teams.
Required Skills
  • Master’s degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, or a related technical field; alternatively, a bachelor’s degree with relevant industry experience developing and sustaining software platforms.
  • Strong Python proficiency, including object-oriented programming, debugging, automated testing, package management, and production-quality application development.
  • Expertise in modern C++, including templates, STL, memory and resource management, multithreading, debugging, and Visual Studio or a comparable development environment.
  • Hands-on experience with embedded firmware, CAN bus, CANopen, TMCL, object-oriented programming and design, hardware integration, and software performance optimization.
  • Knowledge of Python Asyncio, multiprocessing, and ZeroMQ is preferred.
  • Practical experience using AI-assisted software development tools, being able to independently review generated output for correctness, security, performance, and maintainability.
  • Experience working with REST and WebSocket APIs and client-server architectures is preferred.
  • Experience with Git-based and mercurial source control, code reviews, design patterns, automated unit and integration testing, CI/CD, configuration management, reproducible builds, software releases, and sustaining production software. Familiarity with testing frameworks.
Preferred Skills
  • Robotics, motion control, or industrial automation
  • TCP, UDP, USB, or similar communication protocols
  • React or other full-stack development experience
  • Machine vision, laser systems, or vacuum systems
  • Strong written and verbal communication
  • Ability to work independently and collaboratively
Why Join BPM?

At BPM Microsystems, your work will directly influence sophisticated automation products used by leading electronics manufacturers worldwide. You will solve meaningful software and hardware challenges, work across multiple engineering disciplines, and take ownership of solutions from concept through release and customer support.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Embedded Robotics Software Engineer
Embedded Robotics Software Engineer

BPM Microsystems • Houston (TX)

On-site
USD 120,000 - 170,000
Mechanical Engineer
Mechanical Engineer

BPM Microsystems • Houston (TX)

On-site
USD 70,000 - 95,000
Embedded Software Engineer
Embedded Software Engineer

Brooks Automation • Iowa (LA)

Hybrid
USD 111,000 - 150,000
Medical, Dental, Vision & Disability
401(k) Plan
Paid holidays & Flexible vacation
Embedded Software Engineer
Embedded Software Engineer

Brooks Automation US LLC • Fremont (CA)

Hybrid
USD 111,000 - 150,000
Medical, Dental, Vision
401(k) Plan
Paid holidays & Flexible vacation
Senior Software Engineering Manager
Senior Software Engineering Manager

Green Key Resources • Austin (TX)

On-site
USD 120,000 - 180,000
Embedded Software Engineer
Embedded Software Engineer

Socket.dev • San Francisco (CA)

On-site
USD 120,000 - 180,000
Systems Engineer I - Software, Robotics & Semiconductor Automation
Systems Engineer I - Software, Robotics & Semiconductor Automation

ASM • Phoenix (AZ)

On-site
USD 65,000 - 90,000
Embedded Software Engineer
Embedded Software Engineer

Boston Engineering • Waltham (MA)

On-site
USD 85,000 - 128,000
Embedded Software Engineer
Embedded Software Engineer

Boston Engineering Corporation • Waltham (MA)

On-site
USD 85,000 - 128,000
Embedded Software Engineer San Francisco, CA · On-site
Embedded Software Engineer San Francisco, CA · On-site

Weave Robotics, Inc. • San Francisco (CA), Northern (KY)

Hybrid
USD 120,000 - 210,000