What are the responsibilities and job description for the Embedded Software Engineer position at Pentangle Tech Services | P5 Group?
Job Title: Embedded Linux Software Engineer
Duration: Long term
Job Description:
• Develop embedded software in Linux and U-Boot for custom hardware platforms.
• Perform board bring-up for new hardware prototypes.
• Interface with hardware using I2C, SPI, UART, CAN, I²C Bus, PCIe, NVMe, NOR Flash, DDR, EEPROM, GPIO, and USB.
• Configure and manage Linux kernel, root filesystem (RootFS), device trees, and systemd.
• Design and implement Linux kernel modules and device drivers.
• Work with Yocto build systems, manage builds using GitLab.
• Write applications and scripts using C, C , Go, Python, and Bash scripting.
• Apply knowledge of multi-threading and inter-process communication (IPC) for system performance and reliability.
• Collaborate with system architects to design complex embedded systems and write detailed technical documentation and specifications.
Mandatory Skills:
• Proven experience in embedded Linux development (U-Boot, kernel, drivers) • Proficiency in C/C , Go, Python, and Linux shell scripting
• Strong hands-on experience in board bring-up and debugging
• Expertise in interfacing with various hardware peripherals and buses
• Linux system configuration, including kernel, RootFS, device tree, systemd
• Experience in writing new Linux kernel modules and drivers
• Familiarity with build systems (Yocto) and Git-based workflows
• Solid understanding of multi-threaded application development and IPC
• System-level design and technical specification writing
Preferred Skills:
• Experience with ARM-based SoCs • Knowledge of TCP/IP networking protocols
• Experience with REST and gRPC APIs
• Familiarity with containers (e.g., Docker) Other Requirements:
• Strong English communication skills (written and verbal)
• Ability to work independently and in cross-functional teams
• Aerospace or safety-critical development experience is a plus