Website:
sightforge.co
Job details:
About the Role
Sightforge is looking for a junior programmer with a strong interest in Linux internals, embedded systems, hardware interfaces, and low-level programming.
The ideal candidate must have completed at least a couple of substantial Linux-based projects, either in college or independently as a hobbyist. These could include Linux device drivers, kernel modules, bootloaders, BIOS experiments, custom Linux builds, embedded Linux systems, board bring-up, or hardware-interface projects.
We are looking for someone who has demonstrated technical curiosity through actual projects, technical articles, open-source contributions, hackathons, or programming competitions.
Responsibilities
- Work on embedded Linux platform development and board bring-up.
- Configure and debug Linux kernels, device trees, bootloaders, and system services.
- Develop or modify Linux device drivers and kernel modules.
- Interface with cameras, sensors, autopilots, and communication peripherals.
- Work with UART, I2C, SPI, CAN, USB, Ethernet, GPIO, CSI, PCIe, and MAVLink.
- Debug boot failures, kernel issues, communication faults, and hardware-software integration problems.
- Work with Yocto, Buildroot, U-Boot, or similar embedded Linux tools.
Required Profile
- Strong programming fundamentals in C++.
- Good working knowledge of Linux.
- At least two meaningful Linux internals, embedded Linux, firmware, or hardware-related projects.
- Understanding of pointers, memory, processes, threads, interrupts, and computer architecture.
- Basic ability to read hardware block diagrams and schematics.
- Familiarity with shell scripting, Git, Makefiles, and command-line debugging.
- Evidence of self-learning through technical articles, project documentation, GitHub repositories, or open-source work.
- Participation in hackathons, programming contests, systems-programming challenges, or technical build competitions is preferred.
Preferred Exposure
- Linux kernel modules or device drivers.
- BIOS, bootloader, firmware, or operating-system projects.
- ARM-based boards or microcontrollers.
- Device trees and board-support packages.
- MAVLink, autopilots, flight controllers, or robotic systems.
- Oscilloscopes, logic analysers, JTAG, or serial consoles.
- Yocto, Buildroot, or U-Boot.
What Matters Most
We value demonstrated ability over qualifications.
The candidate should be a good programmer, a persistent debugger, and someone who is genuinely hungry to understand Linux from the kernel to the hardware.
Applicants should share their résumé along with links to GitHub repositories, technical articles, project documentation, hackathon work, videos, or other evidence of hands-on programming.
Click on Apply to know more.