Epicareer Might not Working Properly
Learn More

Embedded Software Engineer

Salary undisclosed

Apply on


Original
Simplified

Job Title: Embedded Software Developer

Job Summary: We are looking for an Embedded Software Developer to join our team, responsible for developing, configuring, and testing Onboard Core Information software. The ideal candidate will have a strong background in C++ and C programming, Linux development, and embedded software architecture. This role requires excellent troubleshooting skills and a collaborative mindset.

Key Responsibilities:

  • Software Development:
  • Develop, configure, and test Onboard Core Information software using C++ and/or C.
  • Troubleshooting:
  • Identify, troubleshoot, and resolve software issues to ensure optimal performance.
  • Collaboration:
  • Participate in daily mentorship sessions for the first six months, engage in weekly stand-up meetings, and contribute to bi-weekly task assignment meetings with the software development team.
  • Documentation:
  • Produce specifications, reports, and test plans using Microsoft Office.
  • Continuous Improvement:
  • Work collaboratively with team members to meet job objectives and deliverables, fostering a culture of innovation and efficiency.

Education and Experience:

  • Required:
  • Bachelor’s degree in Electrical Engineering (BSEE), Computer Engineering (BSCE), or Computer Science (BSCS).
  • 3 years of development experience with C++ and/or C programming languages.
  • 3 years of experience with Linux kernel and Linux device drivers.
  • Prior experience in embedded software development, design, and architecture.
  • Desired:
  • Experience working in a fast-paced Agile team environment.
  • Familiarity with GIT configuration management tools.
  • Ability to read electrical schematics.
  • Experience with scripting in Python.
  • Knowledge of RTOS development (e.g., FreeRTOS).
  • Experience with Ethernet, TCP/IP, and WiFi protocols.
  • Familiarity with CAN, J1939, and other data link protocols.
  • Understanding of design patterns and object-oriented programming.
  • Experience with developing unit tests and test-driven development.
  • Proficiency with debugging tools for embedded systems (e.g., Lauterbach, GDB).

Soft Skills:

  • Strong team player with good verbal and written communication skills.
  • Ability to work effectively in a collaborative environment.