The main function of this position is to apply the principles of electrical engineering and computer science to the design, development, testing, and evaluation of embedded solutions for electronic systems. A typical embedded engineer researches, designs, develops, and tests hardware-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific and general computing applications. This assignment develops mid-layer & app-layer software on telematics and displays electronics.
Job Responsibilities: Key areas of responsibility encountered in this role may include any or all of the following: concept, design, test, document, and promote new software features and processes; perform requirements analysis and decomposition; evaluate new languages, development tools, or processes; perform product maintenance; manage the software lifecycle through version control and configuration management; keep up to date on new technologies or develop new technologies; communicate technical information to customers, team members, suppliers and other units; and support and advise other engineers, managers, marketing personnel, customers and suppliers.
Skills: Mastery of embedded Linux software development. Proficiency with embedded software languages (C, C++, Rust), development tools, and processes, through requirements gathering and functional specification authoring, to development, testing, and delivery. Extensive knowledge of embedded computer hardware. Knowledge of reading schematics and data sheets for components. Ability to troubleshoot issues and make system changes as needed to resolve issues. Verbal and written communication skills, problem solving skills, customer service and interpersonal skills.
Reason/motivation for request:
- Addition
Why Client? “Whether it be ground-breaking products, best in class solutions or a lifelong career, you can build what matters to you at Client. With 150 locations in countries around the world, what you create at Client travels and helps people around the world. You can collaborate with the best minds in the industry, complete meaningful work and continuously grow and develop through our various opportunities. Here, you can do the work that matters.”
Typical task breakdown:
- Mandatory on-site full-time. Depending upon the phase of the assignment, typical day would range from reading the client requirements, researching applicable hardware/interfacing requirements, designing solutions, working with peers & tech leads to finalize solutions, coding solution in C/C++/Rust, manage versioning, unit testing, and/or regression testing.
Education & Experience Required:
- Minimum BS in Computer Engineering / Electrical Engineering / similar required & 5-7 yrs industry experience. Will accept Master's or higher relevant internship/project experience toward minimum.
Top 3 Skills
(Required)
- Real world experience implementing software for embedded Linux is key requirement.
- C/C++/Rust
- Linux Middleware & App development
- Ethernet, TCP/IP, WiFi
Additional Technical Skills
(Required)
- Real world experience implementing software for embedded Linux is key requirement.
*C/C++/Rust
*Linux Middleware & App development
*Ethernet, TCP/IP, WiFi
(Desired)
- Experience designing embedded infotainment, telematics software for in-vehicle information, entertainment, and connectivity
- Experience with Bluetooth
- Kernel building & Linux device drivers
- Experience with scripting using Python & shell scripting
- Experience with GIT configuration management tool
- Experience with control software design patterns and anti-patterns
- Software development process theory and practices such as Agile
- Experience designing electronics controls, including development of device drivers, SPI/I2C peripheral interfacing, hardware diagnostics, operating system configurations, non-volatile memory interfacing, board initialization, and other chip-level interfacing.
- Knowledge of reading schematics and data sheets for components
We use cookies and similar technologies to improve your online experience and the performance of our websites. Select "Accept and continue" or select "Manage my preferences" to customize your choices.
Learn more about our Privacy Policy.