Embedded Firmware Engineer
Swindon Silicon primarily develops custom ASICs, for both internal projects and external customers. These ultralow-power dedicated devices rely on firmware for their initial development, testing and verification, and for operation in customer applications in the field. During development. Full range of software is required to automate test harnesses and run scripts on Linux based systems. After production of the chip (tapeout), development focusses on the final product lifecycle with hardware-in-the-loop and unit testing being managed by CI/CD.
As part of our expansion Swindon Silicon is investing in ever-increasingly powerful tools and development kits for the creation of this firmware, integrating industry standard development environments with customised back end compilers and tools.
The successful candidate will be able apply themselves to all aspects of this process with professionalism, enthusiasm, and a desire for quality.
Technical Skills required
- Degree in Engineering, Electronics, ASIC/FPGA design, Computer Science or similar.
- 3-5 yrs professional experience, coding embedded C on bare-metal / RTOS CPUs to production readiness
- Some experience using C++ in any capacity, professional or personal / hobby use.
- Skilled with scripting methods, such as Python, bash, shell, perl etc.
- Understanding of register maps and memory spaces within SoCs.
- Experience analysing waveforms from oscilloscopes.
- Knowledge of interfaces such as SPI, I2C, parallel busses etc..
- Confidence with Linux.
- GCC, makefiles, linker scripts, GDB, git, gitlab or github, CI/CD, automated build systems.
- Development of simple applications on PCs, (Linux or Windows), for internal test purposes.
- MISRA / quality-assurance techniques.
- Ability read and understand schematics.
- Configuring IDEs such as Eclipse, VSCode, UltraEdit etc
- Experience of VHDL / Verilog for ASIC / FPGA design.
- Unit test and HIL test frameworks.