Dear BriTech Group Applicant,

Is this the role you are looking for If so read on for more details, and make sure to apply today.



For faster processing of your resume please apply directly to our website by clicking the following link: https://britechgroup.com/candidates/search-jobs/#companyId=cbiz_Britech&source=Monster&userId=Admin&viewJob=Req-1919

You may still apply through Monster but this will delay your consideration for the position, due to processing time.

Thank you, we look forward to receiving your information.



The BriTech Group Team

------------------------------------------------------------------------



The Firmware Developer is responsible for the development of embedded software/firmware applications and tools. Assignments also include the maintenance of legacy applications. This may include bug fixes and the addition of new product features and functionality.

Performs a variety of complicated tasks. Works on problems of diverse scope where analysis of data requires evaluation of identifiable factors. Relies on experience and judgment to plan and accomplish goals. Normally receives little instruction on day-to-day work, general instructions on new assignments.

Essential Duties and Responsibilities include the following. Other duties may be assigned.

Process driven project execution from initiation through to completion
Providing accurate project requirements, scope, plans and schedules
Product design, analysis, debugging and verification testing in the pursuit of development goals
Successful interaction with Sales & Marketing and Field Service departments, as well as other Engineering teams and customers
Improving the internal processes and technical level of the SW/FW department
Understanding and development of complex algorithms and analysis of data
Direction and guidance of other personnel in the development or testing phases
Provide high-level technical and application support
Mentoring more junior personnel

Supervisory Responsibilities

This position does not supervise other employees.

Qualifications/Requirements

To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Education and/or Experience

Bachelor's degree (B.S.) from four-year college or university in a Computer Science, Computer/Electrical Engineering, Physical Science or related technical field and at least 8 years of directly related experience in embedded software design and development in C; or equivalent combination of education and experience.

Other Skills and Abilities

A minimum of 8 years of experience in embedded software design and development in C
Thorough knowledge of embedded development from low-level board bring-up, processor, and device interfaces through higher-level data structures, algorithms, design patterns and architecture are required for this position
Device driver development and debug experience
Thorough understanding of DMA engine operations
Experience integrating network stacks and file systems into firmware
Knowledge of Real-Time Operating System concepts
Thorough knowledge of multi-threaded application development
Knowledge of and experience with software engineering best practices including version control, unit tests, code reviews, etc. is required for this position
Experience working with STM32 series or micro-controllers from ST Micro is highly preferred.
Develop multi-threaded applications that runs on RTOS based firmware
Debug with JTAG debuggers, preferably IAR Embedded Workbench and I-Jet
Develop/update board supported packages for Arm Cortex M0+ & Cortex M7 based microcontrollers, preferably STM32 microcontrollers
Develop/update device drivers and abstraction layers
Tools:
Subversion or similar version control tools
IAR Embedded Workbench Development Environment
STM32CubeMX
Knowledge of signal processing and DSP algorithms.
Strong analytical and applied math skills are required. An engineer with a background in the physical sciences is ideal in this position.
Excellent written and verbal communication skills