JustJoin.IT Praca zdalna Senior

Senior C Embedded Developer

3mdeb sp. z o.o.

⚲ Gdańsk

20 000 - 23 000 PLN netto (B2B) | 17 000 - 20 000 PLN brutto (UoP)

Wymagania

  • C
  • Git
  • Debbuging
  • Open source

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/ 
 
Requirements 
• Knowledge of C and how programs work:
• Ability to manage memory manually and take care of its initialization
• Knowledge of hardware-dependent concepts: pointers, data layout, stack, bit fields, little/big endian
• Basic data structures
• An idea about registers and machine languages in general
• Some information about weak object symbols, program sections, and linker scripts

• Software development cycle:
• Using the git version control system
• Understanding of toolchains and cross-compilation
• Dealing with heterogeneous build systems (GNU Make, Kconfig, etc.)
• Non-interactive debugging (prints, logs, dump analysis)
• Working with codebases of thousands of files written by hundreds of authors (grepping, ctags, digging in commit history to  compensate for the deficiency of documentation)

Nice to have 
• Experience with bare-metal programming and hardware abstraction layers
• Experience with (long-running) open-source projects, their mailing lists, and review tools
• Debugging with GDB (remote targets, symbol files, hardware breakpoints)

Offer description
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

🔴
Ability to manage memory manually and take care of its initialization
Oczekuje się od kandydata umiejętności ręcznego zarządzania pamięcią, co jest typowe dla programowania niskopoziomowego i systemowego, gdzie błędy mogą prowadzić do poważnych problemów.
🟡
An idea about registers and machine languages in general
Wymagane jest podstawowe zrozumienie działania procesora na poziomie sprzętowym, co może sugerować potrzebę głębszego wchodzenia w szczegóły implementacji.
🔴
Working with codebases of thousands of files written by hundreds of authors (grepping, ctags, digging in commit history to compensate for the deficiency of documentation)
Oznacza to pracę z bardzo dużym i potencjalnie chaotycznym kodem, gdzie brak dokumentacji jest normą i trzeba polegać na metodach śledczych.
🟡
Dealing with heterogeneous build systems (GNU Make, Kconfig, etc.)
Kandydat musi być gotowy na pracę z różnorodnymi i potencjalnie skomplikowanymi systemami budowania oprogramowania.
🔴
Non-interactive debugging (prints, logs, dump analysis)
Sugestia, że tradycyjne debuggery interaktywne mogą być niedostępne lub trudne w użyciu, co wymaga umiejętności analizy danych wyjściowych i zrzutów pamięci.