This position is on the Embedded Software team within the Research & Development organization of Checkpoint Systems.
The Senior Software Engineer – Embedded Linux Platforms is responsible for designing, developing, maintaining and enhancing software that runs on Checkpoint embedded Linux-based devices, including RFID readers and edge computing platforms.
This role focuses primarily on Linux application and platform software rather than low-level firmware development. The engineer will work across Linux services, Python microservices, REST APIs, MQTT-based communication, cloud integration, device telemetry, diagnostics, software updates and local device-management workflows.
The ideal candidate can operate across the edge-device software stack: Linux integration, system services, packaging, containerized services, device-to-cloud communication, local APIs, diagnostics and selected on-device UI components used for configuration and troubleshooting.
This role collaborates with software engineers, firmware engineers, architects, hardware engineering, QA, Field Service, Manufacturing, Product Management and Compliance teams to build reliable software that interfaces with physical hardware, drivers, sensors, networks and cloud services.
The successful candidate demonstrates strong ownership, clear communication, sound technical judgment, effective troubleshooting skills and the ability to mentor less experienced engineers while remaining hands-on in design, implementation and validation.
Qualifications
Primary Responsibilities
- Design, develop and maintain embedded Linux-based services, microservices and system components using Python, Bash and other appropriate languages.
- Design software architecture for new platform capabilities and evaluate tradeoffs involving performance, reliability, security, maintainability and operational supportability.
- Implement and maintain REST APIs used by local services, on-device UI components, diagnostics tools and Azure/cloud-connected services.
- Integrate software with firmware and hardware interfaces, including RFID, GPIO, networking, drivers, sensors and device-management interfaces.
- Develop and support OTA/software update, provisioning, commissioning, configuration and remote device-management flows.
- Build and maintain telemetry, logging, diagnostics and service-observability capabilities to support QA, Field Service and manufacturing teams.
- Develop and maintain Docker/OCI container-based services or deployment workflows where appropriate for Linux edge-device platforms.
- Write and maintain unit, API, integration, regression and system-level tests appropriate for embedded Linux and edge-device environments.
- Contribute to build pipelines, automated testing, packaging flows and software release processes.
- Participate in peer code reviews and provide constructive, actionable feedback aligned with team architecture and quality standards.
- Ensure code quality, maintainability, secure software practices and adherence to architectural standards.
- Document APIs, service behavior, packaging flows, upgrade steps, configuration procedures and troubleshooting guides.
- Analyze field issues and assist in troubleshooting on-device software, network flows, cloud connectivity and hardware/software interactions.
- Support Manufacturing and Operations by improving provisioning, configuration, software installation and upgrade reliability for embedded devices.
- Provide task estimates, track progress, communicate risks and deliver work reliably within sprint and release timelines.
- Mentor and coach less experienced engineers, helping raise technical capability across the team
Education
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering or a related technical discipline; equivalent practical experience may be considered.
- Candidates with degrees in other disciplines should be able to demonstrate significant professional software engineering experience as a primary job responsibility.
Experience
- 8+ years of professional software engineering experience, including significant ownership of production-quality software.
- 3+ years operating at a senior-engineer level, including technical leadership, architectural contribution, mentoring and cross-functional collaboration.
- 5+ years of Linux-based software development experience, preferably on embedded Linux, edge computing, IoT, device-management or field-deployed systems.
- Experience supporting software deployed to physical products, devices or operational environments is strongly preferred.
Knowledge, Skills & Abilities
- Strong Linux experience, including system services, networking, permissions, shell tools, troubleshooting and service management.
- Strong Python development experience for production software, services, tooling or automation.
- Experience developing microservices, REST APIs and service-to-service integration.
- Experience with systemd, Linux service management and operational troubleshooting of long-running services.
- Experience with Git or equivalent version-control workflows, peer review and collaborative software development.
- Ability to troubleshoot complex interactions among software, Linux, networking, hardware interfaces and cloud-connected services.
- Experience with unit, API, integration, regression or end-to-end testing in production software environments.
- Understanding of secure software practices, dependency awareness and basic security considerations for connected Linux devices.
Strongley Preferred
- Experience with software update, OTA, provisioning, commissioning, remote device management and telemetry.
- Experience with MQTT or other device/cloud messaging protocols.
- Experience with Docker, OCI containers or containerized service deployment on Linux platforms.
- Experience with Azure or other cloud-integration patterns for connected devices.
- Experience with CI/CD, automated testing and software release pipelines such as GitHub Actions or Azure Pipelines.
- Experience working with manufacturing, field service, QA or support teams for deployed devices or systems.
Nice to Have
- Experience with RFID systems, IoT devices, sensors or other hardware-integrated platforms
- Experience with React or other front-end technologies used for device-management, configuration or diagnostics workflows.
- Experience with Rust and/or Go for system services, tooling or platform components.
- Experience with reverse proxies, Traefik, Linux networking, certificates or secure device connectivity.
- Experience with SAST, DAST, SCA, DevSecOps practices or regulated product environments.
Job Type: Full-Time
Salary Range: $110,000- $130,000
Benefits:
- 401 (k)
- 401 (k) Matching
- Medical Insurance
- Dental Insurance
- Vision Insurance
- Life Insurance
- Employee Assistance Program
- Employee Discount
- Paid Time Off
- Tuition Reimbursement
- Flexible Spending Account
- Health Savings Account
Schedule:
- Monday to Friday
- Weekends as needed
- Limited travel may be required for product bring-up, customer/site issue investigation, manufacturing support or cross-functional collaboration.