Title: Embedded Software Engineer / DeveloperRecruiter Contact Information: firstname.lastname@example.org
Reports to: VP
· Good knowledge of MCU architectures and high level language (C) techniques to develop efficient, well structured modular and re-usable code.
· Good grasp of Embedded operating systems (e.g. MQX, FreeRTOS), real-time coding techniques, Interrupts, and an understanding of processing / code execution deadlines.
· Design & implement software frameworks, library functions and peripheral SW drivers targeted at data acquisition, control and communications
· Familiarity with industry peripherals (ADC, DAC, SCI, SPI, UART, DMA, Timers,…etc), having designed and written SW drivers / APIs, and comfortable in debugging at low level. Able to interpret register / bit definitions from user’s guides / data sheets
· Experience with interpreting, designing and developing industry protocols like Modbus, TCP/IP, USB, other serial with appropriate APIs and stacks
· Understand the architecture of networks and it’s layers / components / packet structures
· Experience with NXP (Freescale) ARM cortex M4 Series MCUs is a definite advantage.
· Experience with Bluetooth Low Energy, it’s protocol, sw drivers is a definite advantage.
· Ability to develop and realize math / logic / state-machine based algorithms
· Interact as part of a team to define SW interfaces, calling conventions, protocols,…etc
Bachelor / Masters Electrical Eng. or Computer Science
5-8 years industry experience
Desirable Skills(not essential, but a clear advantage for candidate):
· Experience with TI C2000 (C28xxx) DSP / MCUs
· Experience with C#, .NET environments
· Experience with UI / HMI (human machine interface)
· Experience with SCADA, and related industrial systems
· Math skills, spreadsheet (Excel), …etcDegree
Candidate general requirements include:
· Must be able to take customer (or market) ideas / requirements and formulate a tangible proof-of-concept software prototype / demo working closely with Hardware engineers.
· Able to effectively communicate complex ideas both verbally and in writing is essential. The person in this position must be able to present convincingly and articulate clearly to knowledgeable audience.
· Interact with customers from time to time, and have appropriate “customer focused” skills
· Candidate should be familiar with good coding practices, software methods, writing requirements docs / specifications,…etc.