Welcome to Silicon Jobs, your connection to the AI Economy > 

Search

Embedded Engineer

PublishedPublished: 6/14/2022
Technology

Job Description

Position Overview

\n

We are seeking an Embedded Software Engineer to design, develop, test, and support embedded and PC-based software solutions. This role focuses on firmware and application development across microcontroller platforms and real time systems, with responsibilities spanning embedded controller development, system integration, software validation, and cross-functional collaboration.

\n


\n

Essential Job Functions

\n

    \n
  • Develop embedded software for microcontroller-based systems using both bare metal and real time operating systems.
  • \n

  • Create board bring up code, device drivers, boot loaders, firmware update mechanisms, and software interfaces for sensors and peripherals.
  • \n

  • Design, implement, test, and debug embedded device controllers and related software components.
  • \n

  • Develop PC applications that support diagnostics, device testing, production testing, and test automation.
  • \n

  • Conduct unit tests, integration tests, system level debugging, and code reviews to ensure quality and reliability.
  • \n

  • Diagnose and resolve hardware and software issues in real time environments.
  • \n

  • Integrate software modules, third party libraries, and APIs into existing or new systems.
  • \n

  • Perform software validation, functional testing, and system compatibility checks across environments.
  • \n

  • Ensure compliance with applicable safety standards, industry norms, and internal policies.
  • \n

  • Optimize software for performance, memory utilization, and power efficiency.
  • \n

  • Support planning, task definition, and estimation as part of development efforts.
  • \n

  • Collaborate with engineering teams (electrical, mechanical, quality) to ensure seamless product integration.
  • \n

  • Analyze, document, and track software defects and improvements to resolution.
  • \n

  • Contribute to continuous improvement of development processes, tools, and procedures.
  • \n

  • Support software deployment, configuration, and technical requirements.
  • \n

  • Use version control (e.g., Git), build systems, and CI/CD workflows to streamline development.
  • \n

  • Assist production teams in troubleshooting and improving system performance.
  • \n

  • Provide engineering support where needed across departments.
  • \n

  • Perform additional engineering duties as assigned.
  • \n

\n


\n

Minimum Qualifications

\n

    \n
  • Bachelor’s degree in Engineering, Computer Science, or a related technical field.
  • \n

  • 5+ years of hands-on experience in embedded systems development.
  • \n

  • Proficiency in C or C++ programming with experience in multithreaded code and hardware-software integration.
  • \n

  • Experience with microcontrollers (Cortex-M family preferred) in both real time operating system and bare metal environments.
  • \n

  • Experience with board bring up and developing low-level drivers for interfaces such as SPI, I2C, UART, ADC, DAC, USB, and display interfaces.
  • \n

  • Practical experience with debugging tools and test equipment (e.g., JTAG, GDB, logic analyzers, scopes).
  • \n

  • 2+ years of developing PC-based applications using C# and integrating with databases.
  • \n

  • Familiarity with setting up toolchains, build systems, and debugging environments.
  • \n

  • Knowledge of software engineering best practices and tools, including version control and issue tracking.
  • \n

  • Ability to read and interpret schematics, datasheets, and hardware documentation.
  • \n

  • Strong problem solving, debugging, and analytical skills.
  • \n

  • Excellent communication and interpersonal skills.
  • \n

  • A positive attitude and ability to work collaboratively in team environments.
  • \n

\n


\n

Salary Range: $130 - 170K

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...