Intern/Junior C Embedded Developer
⚲ Gdańsk
5 000 - 8 000 PLN brutto (UZ) | 5 000 - 8 000 PLN brutto (UoP)
Wymagania
- Git
- Open source
- Linux
- Debbuging
- C
Opis stanowiska
About 3mdeb
3mdeb is a company specializing in open-source firmware and embedded systems solutions. We develop Dasharo - an open-source, coreboot-based firmware distribution that replaces proprietary BIOS/UEFI implementations. Our mission is to provide trustworthy, secure, and transparent firmware solutions for diverse hardware platforms, including laptops, desktops, servers, and embedded appliances.
Learn more: • https://3mdeb.com/
• https://docs.dasharo.com/
About the Role
We are looking for a motivated Junior C Embedded Developer to join our team full-time. In this role, you will contribute to the development and maintenance of low-level firmware components written in C. You will work with open-source codebases, and collaborate with experienced engineers to implement and debug features in a Linux-based development environment.
C Programming
• Solid proficiency in C: Understanding of manual memory management (allocation/deallocation) and the importance of proper variable initialization.
• Code navigation skills: Ability to effectively move through large, multi-repository codebases using tools like grep, ctags, cscope.
• Fundamental hardware concepts: Clear understanding of pointers, memory layout (stack vs. heap), and bitwise operations.
Development workflow & build systems
• Version control: Practical Git experience (committing, branching, creating PRs, navigating commit history to compensate for lack of documentation).
• Heterogeneous build systems: Ability to work across different build systems and understand their integration, particularly:• Makefiles
• Kconfig configuration system
• Understanding how build options propagate between systems
• Ability to read, understand, and make modifications to build configurations following existing patterns.
Debugging & problem solving
• Pattern recognition: Resourceful at finding patterns in unfamiliar code and applying them to new features.
• Non-interactive debugging using prints, logs, and dump analysis.
• Practical knowledge of diagnosing build and integration issues in unfamiliar code.
Nice to Have
• Any hobbyist experience with bare-metal programming or firmware (e.g., Arduino, STM32, ESP32, coreboot, EDK2).
• Experience with open-source workflows (PRs, mailing lists, code review).
• General awareness of boot process and computer architecture
What we offer
We offer the opportunity to work on open-source projects and collaborate with the community of world-class industry leaders, as well as work with some of the most prominent vendors to build your own portfolio through contributions. As a team member, you'll impact the product and its final shape with opportunities for professional development, flexible working hours, and employment conditions.
We also provide training and certification to help our team members build their skills and advance in their careers. Our comprehensive benefits package includes medical care, financial support for sports cards, and group insurance.
In addition, we offer opportunities to attend international open-source conferences, some of which we co-organize with other companies, giving our team members the chance to showcase their skills and expertise. We also organize and host our own community events, such as workshops and community calls, where team members can share their knowledge and network with other industry professionals.
3mdeb is a company specializing in open-source firmware and embedded systems solutions. We develop Dasharo - an open-source, coreboot-based firmware distribution that replaces proprietary BIOS/UEFI implementations. Our mission is to provide trustworthy, secure, and transparent firmware solutions for diverse hardware platforms, including laptops, desktops, servers, and embedded appliances.
Learn more: • https://3mdeb.com/
• https://docs.dasharo.com/
About the Role
We are looking for a motivated Junior C Embedded Developer to join our team full-time. In this role, you will contribute to the development and maintenance of low-level firmware components written in C. You will work with open-source codebases, and collaborate with experienced engineers to implement and debug features in a Linux-based development environment.
C Programming
• Solid proficiency in C: Understanding of manual memory management (allocation/deallocation) and the importance of proper variable initialization.
• Code navigation skills: Ability to effectively move through large, multi-repository codebases using tools like grep, ctags, cscope.
• Fundamental hardware concepts: Clear understanding of pointers, memory layout (stack vs. heap), and bitwise operations.
Development workflow & build systems
• Version control: Practical Git experience (committing, branching, creating PRs, navigating commit history to compensate for lack of documentation).
• Heterogeneous build systems: Ability to work across different build systems and understand their integration, particularly:• Makefiles
• Kconfig configuration system
• Understanding how build options propagate between systems
• Ability to read, understand, and make modifications to build configurations following existing patterns.
Debugging & problem solving
• Pattern recognition: Resourceful at finding patterns in unfamiliar code and applying them to new features.
• Non-interactive debugging using prints, logs, and dump analysis.
• Practical knowledge of diagnosing build and integration issues in unfamiliar code.
Nice to Have
• Any hobbyist experience with bare-metal programming or firmware (e.g., Arduino, STM32, ESP32, coreboot, EDK2).
• Experience with open-source workflows (PRs, mailing lists, code review).
• General awareness of boot process and computer architecture
What we offer
We offer the opportunity to work on open-source projects and collaborate with the community of world-class industry leaders, as well as work with some of the most prominent vendors to build your own portfolio through contributions. As a team member, you'll impact the product and its final shape with opportunities for professional development, flexible working hours, and employment conditions.
We also provide training and certification to help our team members build their skills and advance in their careers. Our comprehensive benefits package includes medical care, financial support for sports cards, and group insurance.
In addition, we offer opportunities to attend international open-source conferences, some of which we co-organize with other companies, giving our team members the chance to showcase their skills and expertise. We also organize and host our own community events, such as workshops and community calls, where team members can share their knowledge and network with other industry professionals.
🔍 Dekoder Ogłoszenia
🟡
collaborate with experienced engineers
Będziesz pracować pod okiem bardziej doświadczonych kolegów, co może oznaczać uczenie się od nich, ale też potencjalnie wykonywanie zadań, które oni chcą delegować.
🟡
navigate through large, multi-repository codebases using tools like grep, ctags, cscope
Oczekuje się, że będziesz potrafił samodzielnie odnajdywać się w skomplikowanym kodzie, co może sugerować, że dokumentacja nie zawsze jest idealna.
🔴
navigating commit history to compensate for lack of documentation
Bezpośrednio wskazuje na to, że dokumentacja może być uboga, a historia commitów będzie kluczowym źródłem informacji.
🔴
Heterogeneous build systems: Ability to work
Fragment jest niekompletny, co sugeruje pośpiech w tworzeniu ogłoszenia lub niejasne oczekiwania co do tej umiejętności.