Embedded Software Engineer
Role details
Job location
Tech stack
Job description
-
Initiate and implement efforts to detect, solve, and preclude the recurrence of design problems in addition to developing and implementing efforts to reduce excess work costs. Remain up to date on new and emerging technologies within the area of technical expertise and serve as a resource to other employees.
-
Develop (and Support team efforts) embedded software for boards with 32-bit Microcontrollers/ SOM that connect with devices like sensors and motor drivers.
-
Maintain and expand existing software created for such boards.
-
Develop (and Support team efforts) control software written in HTML, JavaScript, PHP, Python, C++, C# for embedded systems and computer-based control/Test/Configuration tools for embedded products.
-
Lead/ participate in design review for software requirements and architectures.
-
Create and release designs assuring functionality, feasibility, reliability, completeness, and conformance with applicable Quickset standards while maintaining high quality & consistency of engineering deliverables.
-
Failure analysis of returned units for software and possible communication-related electrical issues. Debug and troubleshoot embedded systems and prototyping boards. Knowledge of electrical test equipment, such as a network analyzer, oscilloscope, and protocol analyzer, for a wide range of applications.
Requirements
· B.S. Electrical or Computer Engineering from an accredited engineering school.
· 6-10 years' experience with software development - embedded web technologies, ONVIF Protocol, video based object tracking, and control GUI.
· Experience in coding and techniques in HTML, JavaScript, PHP, Python, C++, C# on Embedded Linux or similar platforms.
· Experience in serial communication using ASCII and binary protocols like: MODBUS, IBM BiSync, SONY VISCA, PELCO-D.
· Experience in implementing RTOS, TCP/IP stack, on embedded platform.
· Experience in embedded device networking, and real-world experience with dealing with the unpredictability and variability of the internet (e.g., packet loss, latency, bandwidth estimation, FEC).
· Demonstrated abilities in conception, preparation and analysis of software specifications and the resolution of product performance problems due to software issues.
· High level of self-motivation and drive to work in a fast-paced, challenging, and fluid environment.
· Strong preference in supporting products in an OEM facility.
· Must have passion for embedded systems and test/control software.
Preferred Experience:
· Multicore ARM controllers/ Similar processor/ controllers.
· C++ and Qt framework
· TI Code Composer Studio.
· Experience in motion control world.
· Experience with networking and video streaming., * Are you authorized to work in the USA without sponsorship?
- List your experience with embedded software projects from scratch with Bare Metal and RTOS.
Education:
- Bachelor's (Required)
Experience:
- Embedded software: 6 years (Required)
Language:
- English (Required)
Benefits & conditions
Pulled from the full job description Health insurance 401(k) matching Paid time off Vision insurance Health savings account Dental insurance, * 401(k) matching
- Dental insurance
- Health insurance
- Health savings account
- Paid time off
- Vision insurance