Software Engineer- Embedded Device

Engineering & Product Development
Full time
Apply by
York, USA

About HMS

 

We shape the connected world!

HMS Networks makes the World more connected, productive and sustainable. HMS industrial communication products enable millions of machines such as robots, drives and air-conditioners to get connected to software and systems – A necessity to meet the future demands for energy efficiency and sustainability.

 

Position Summary

 

HMS Networks is seeking a skilled and innovative Software Engineer to contribute to the development of industrial automation solutions. This role is instrumental in designing, implementing, and maintaining software for Human Machine Interfaces (HMIs), protocol converters, and industrial edge computing devices that support real-time data visualization, remote monitoring, and secure communication in industrial environments. 

 

As part of the HMS engineering team, you will work in a collaborative, cross-functional environment to design, implement, and maintain backend systems and device-level software that power industrial connectivity solutions. This role focuses on developing robust applications for Human Machine Interfaces (HMIs), protocol converters, and edge computing devices that enable real-time data visualization, secure communication, and reliable operation in industrial environments. The position emphasizes backend development, embedded Linux, networking protocols, and integration with industrial automation standards. You will help create high-performance, device-centric applications that ensure scalability, operational efficiency, and long-term reliability for critical manufacturing and infrastructure systems.

 

This is a unique opportunity to shape next-generation industrial connectivity and edge intelligence solutions for customers across North America and beyond.

Essential Job Functions 

 

·        Works in collaboration with software architects, developers, and hardware teams to develop elegant engineering software solutions and applications.    

·        Actively participate in new software development activities and troubleshooting field issues in embedded system applications including advanced computer networking, cellular connectivity issues.   

·        Develops, tests, and documents software systems to specifications.  

·        Write clean, maintainable, and efficient code following coding standards and best practices. 

·        Participate in code reviews, unit testing, and debugging. 

·        Analyze and resolve complex technical challenges. 

·        Document technical designs, code modules, and release notes. 

·        Contribute to performance improvements and optimization. 

·        Exposure to Python and willingness to learn is an added advantage. 

·        Develops proof of concepts to explore new technologies or functionalities. 

  • Carries out other duties as assigned as business needs require.  

Minimum Requirements 

·        3+ years of hands-on C++ development experience preferred

·        Strong understanding of Object-Oriented Programming, STL and multithreading. 

·        Experience working with bash environment of Linux (Yocto) and building systems (Make/CMake). 

·        Use of C++ and Python in an embedded Linux environment. 

·        Exposure to network protocols, TCP/IP, and inter-process communication. 

·        Familiarity with tools like GDB, Valgrind, Wireshark. 

·        Knowledge of embedded systems or interfacing with hardware is a plus. 

·        Writing and consuming APIs and services, interfacing with 3rd party applications. 

·        Knowledge of computer architecture, operating systems (Windows, Linux), and Networking. 

·        Use of Atlassian suite for documentation, work item tracking, and testing. 

·        Experience in Agile delivery methodologies and use of DevOps pipeline (GitLabs, AzureDevOps, etc).  

  • BS degree Electrical or Computer Science; or combination of experience and education.   

Preferred Technical Skills  

·        Practical understanding of industrial cybersecurity standards. 

·        Asynchronous, object-oriented development experience using Python. 

·        Use of AI technologies in professional applications. 

·        Exposure to Industrial Automation Domain (PLC integration, Protocols such as Modbus, DNP3). 

Travel

·        0-5%

HMS Networks provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion, sex, national origin, age, disability or genetics. In addition to federal law requirements, HMS Networks complies with applicable state and local laws governing nondiscrimination in employment in every location in which the company has facilities. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.