> Markdown version of [/jobs/ext/420842-prototyping-design-software-engineer](https://www.wearedevelopers.com/jobs/ext/420842-prototyping-design-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Prototyping Design Software Engineer - **Company:** Snapchat - **Location:** Paris, France - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Adobe Flash, Computer-Aided Design, ARM Architecture, Booting (BIOS), C++ (Programming Language), Computer Programming, Computer Engineering, Continuous Integration, Datasheets, Software Debugging, Device Drivers, Memory Management, Embedded C, Embedded Software, Emulators, Firmware, Field-Programmable Gate Array (FPGA), FreeRTOS, GNU Linker, Joint Test Action (IEEE Standards), PCI Express, Real-Time Operating Systems, Static Timing Analysis, System Software, Universal Asynchronous Receiver/Transmitter, Data Logging, Serial Peripheral Interface, Hardware Testing, Gitlab, Information Technology, Bare Metal, Teamcity, EMMC - **Published:** June 14, 2026 - **Apply:** https://fr.indeed.com/viewjob?jk=ec86907a3bad2269 ## About the Role * Strong understanding of SoC RTL integration and the tradeoffs required to map large designs onto prototyping and emulation platforms. * Hands-on experience with FPGA prototyping and hardware emulation platforms such as HAPS, ZeBu, or similar Cadence/Siemens/Synopsys environments. * Experience with Static timing analysis for XILINX/Intel FPGA platforms * Proficiency in embedded C/C++ and ability to read, write, and debug low-level firmware for boot, diagnostics, drivers, and hardware validation. * Experience with RTOS concepts and development, including task/thread scheduling, interrupts, synchronization, timers, memory management, device-driver integration, and real-time constraints. * Experience with bare-metal development and boot flows, including boot ROM/FSBL, startup code, linker scripts, memory maps, MMU/MPU/cache configuration, and board support packages. * Familiarity with ARM Cortex-M/R/A architectures, SoC peripherals, and system interfaces such as LPDDR/DFI, eMMC, PCIe, JTAG/SWD, UART, SPI, I2C/I3C, GPIO, and QSPI Flash. * Experience debugging clocks, resets, timing issues, waveforms, platform bring-up problems, and embedded software crashes or asserts across multiple pre-silicon targets. * Familiarity with debugging tools such as JTAG/SWD, GDB, trace, logic analyzers, waveform viewers, embedded logging, and diagnostic frameworks. * Ability to work from RTL, hardware schematics, datasheets, and timing reports, and to communicate platform limitations and integration constraints clearly across hardware and software teams. * Strong problem-solving, communication, teamwork, and prioritization skills in a fast-paced cross-functional environment., * Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or related field. * 5+ years of experience in SoC prototyping, FPGA/emulation bring-up, embedded software, firmware, or pre-silicon validation. * Experience with RTL integration, FPGA prototyping, hardware emulation, or pre-silicon validation. * Demonstrated experience in C/C++ programming for embedded, bare-metal, or RTOS-based systems. * Experience bringing up complex SoC or subsystem designs on non-silicon targets and debugging boot, firmware, RTOS, and hardware/software interface issues using waveforms, JTAG/SWD, logs, and trace., * Experience with Synopsys ZeBu and Synopsys HAPS platforms; experience with other Cadence, Siemens, or Synopsys emulation/prototyping environments is a plus. * Experience running embedded software, diagnostics, or RTOS-based applications on FPGA or emulator platforms. * Experience with RTOS platforms such as FreeRTOS, Zephyr, ThreadX, QNX, or similar, including BSP/device-driver integration and real-time profiling. * Experience with ARM Cortex-M/R/A architectures, bootloader/FSBL development, memory subsystems such as LPDDR/DFI, and storage or high-speed interfaces such as eMMC and PCIe. * Experience building or maintaining CI/CD pipelines for hardware prototyping and embedded software flows, such as GitLab or TeamCity. * Experience working closely with system software teams on early boot, FSBL, driver, RTOS, and validation enablement. ## Description * Port SoC and subsystem RTL onto FPGA, HAPS, and ZeBu platforms while keeping the prototyping code as close as possible to ASIC RTL and carefully managing target-specific conditionals. * Build and maintain pre-silicon platforms that enable early firmware software development, bootloader/FSBL bring-up, and validation of key interfaces such as eMMC, LPDDR, PCIe, MIPI CSI2/DSI, UART, QSPI Flash, SPI, I2C/I3C, GPIO, and JTAG. * Rework RTL, wrappers, and platform-specific logic for prototyping targets, including HAPS/ZeBu-specific interface PHY changes and controller-presence handling to support common software flows across SoC, ZeBu, HAPS, and FPGA platforms. * Develop, integrate, or adapt low-level embedded software needed for bring-up, including board support code, boot configuration, device drivers, diagnostics, and RTOS or bare-metal test applications. * Debug complex hardware/software bring-up issues across HAPS, ZeBu, and FPGA targets, including memory-model integration, reset and clock sequencing, controller/PHY interaction, timing issues, waveform analysis, JTAG/SWD debug, and timing-report review. * Participate in designing, developing, and maintaining SoC validation tests at pre-tapeout stages using firmware, bare-metal tests, RTOS-based applications, and host automation. * Partner with SoC, verification, infrastructure, and external vendors to root-cause issues and accelerate pre-silicon software readiness. * Integrate prototyping platforms into CI/CD flows and improve build reliability, automated regressions, artifact traceability, and shared platform infrastructure. ## Related Videos - [WeAreDevelopers LIVE - Modern DevOps for IoT Devices and More](https://www.wearedevelopers.com/videos/1805-wearedevelopers-live-modern-devops-for-iot-devices-and-more) - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Enabling automated 1-click customer deployments with built-in quality and security](https://www.wearedevelopers.com/videos/83-enabling-automated-1-click-customer-deployments-with-built-in-quality-and-security) - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) - [Unleashing the Full Potential of the Arm Architecture – Write Once, Deploy Anywhere](https://www.wearedevelopers.com/videos/940-unleashing-the-full-potential-of-the-arm-architecture-write-once-deploy-anywhere) - [Are Code Reviews Worth It? Insights from 16 Years of Review Data](https://www.wearedevelopers.com/videos/1135-are-code-reviews-worth-it-insights-from-16-years-of-review-data) ## Related Articles - [Résumé-Driven Development: How IT trends affect the job market for software developers](https://www.wearedevelopers.com/magazine/59-resume-driven-development-how-it-trends-affect-the-job-market-for-software-developers) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Best Coding Boot Camps in Germany](https://www.wearedevelopers.com/magazine/237-best-coding-boot-camps-in-germany) - [Data Science & more: The Lopez dilemma](https://www.wearedevelopers.com/magazine/10-data-science-more-the-lopez-dilemma) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard)