Embedded Java Software Engineer

Skills
Computer ScienceProtocolsElectrical EngineeringFunctional TestingGarbage CollectionJoint Test Action GroupOptimization
Role

What the job involves

The main requirements, responsibilities and hiring steps.

Requirements

  • Bachelor's degree in Computer Science Software Engineering or Electrical Engineering
  • 3+ years of hands-on experience in embedded systems and Java
  • Must reside within the US
  • Strong Java programming skills
  • Experience in embedded Java applications preferred
  • Experience with embedded Linux or RTOS environments
  • Experience in Test-Driven Development and unit functional testing for embedded systems
  • Familiarity with Java-based memory management garbage collection tuning and optimization in resource-constrained environments
  • Familiarity with ensuring that firmware meets timing and performance requirements
  • Experience with Gradle Maven or other Java build systems
  • Understanding of embedded system design
  • Familiarity with debugging tools such as JTAG oscilloscopes and Linux-based diagnostic tools such as dmesg strace
  • Experience working in an Agile Scrum development process
  • Strong written and verbal communication skills
  • Analytical and logical reasoning skills
  • Problem-solving skills and attention to detail
  • Ability to multi-task and stay organized in a dynamic environment

Nice to have

  • Embedded systems experience
  • Java platform familiarity
  • Safety-critical software exposure
  • Mission-critical software exposure
  • Agile mindset
  • Analytical reasoning
  • Attention to detail
  • Organized multi-tasker

Day to day

  • Design and develop Java-based firmware for embedded systems with a strong focus on hardware interaction and real-time performance.
  • Collaborate closely with hardware and systems teams to integrate firmware smoothly and resolve low-level interaction issues using diagnostic tools.
  • Support testing deployment documentation and legacy product sustainment while exploring improvements in power management memory optimization and driver interaction.

Hiring process

  • Applications will be accepted for at least 3 days from the posting date