Fevrok logo
Design Engineer, Embedded Software
il y a 3 ans

Design, develop and test embedded software/firmware for scientific instrumentation systems in a multi-disciplined, concurrent development team setting.  Participate in product requirement definition and architecture development; follow formal design methods and code inspections for quality assurance.

Professional Qualifications

Education

  • Bachelor of Science in Computer Science, Computer Engineering, or an engineering discipline with a heavy emphasis on computer science is required.


Experience

  • Embedded: Design experience with embedded processors, utilizing data acquisition techniques in a real time, multitasking/threaded environment.

  • Must be proficient in at least one of the following languages: C, C++, Python or Java.

  • Familiar with and understanding of digital hardware, ARM based processors, memory management, GPIO, SPI, I2C, UART and other common hardware interfaces.

  • Familiar with and understanding of BSP/board support package, bootloaders, RTOS, embedded Linux drivers and kernel.

  • Demonstrated ability to translate abstract logical concepts and ideas into software/firmware architecture implementations.

  • Familiar with compilers, debuggers, source control (GIT), and bug tracking for code development.


General

  • Solid understanding of software engineering fundamentals and mathematics.

  • Self-starter and motivated. Enjoy challenges.  Proven drive to achieve goals.

  • High insight, curiosity and problem-solving ability.  High attention to detail.

  • Good interpersonal and networking skills.

  • Team player. Enjoys and works well with other people in a team environment.

  • Effective oral and written communication skills in English.

  • Dependable, positive attitude and good attendance.

  • High ethics, integrity, honesty, patience.


Position Responsibilities

Specific:

  • Design, develop, implement, test, debug, and document embedded software/firmware solutions for instrumentation applications.

  • Engage as a member of a multi-disciplined, multi-department design and development team.

  • Participate in product requirement definition through interactions with customers, scientists, and marketing personnel to understand and define features and functions.

  • Understand the hardware/software interfaces as they apply to the overall architecture.

  • Implement the software/firmware architecture using formal design methods and code inspections for quality assurance.

  • Integrate and test software/firmware to ensure that the design meets product requirements.

  • Document software, algorithms, and specifications

  • Maintain released software; troubleshoot and resolve defects.


General:

  • Gain a solid understanding of the scientific application/use-case being addressed with the product.

  • Assist with product development schedules.

  • Light Work-Exerting up to 20 pounds of force occasionally, and/or up to 10 pounds of force frequently, and/or a negligible amount of force constantly.

  • Other job-related duties as assigned.








©2025 Fevrok. Tous les droits sont réservés.