Mid/Senior Linux Software Engineer with Networks
CodiLime
- Warszawa, mazowieckie
- Stała
- Pełny etat
- Act to deliver.
- Disrupt to grow.
- Team up to win.
- We often work using client-supplied hardware and tools
- Our projects may be managed by our EMs or directly by the client
- We work with clients in the US, Asia, and Europe
- Our projects are typically 3-9 people
- Research and define how to implement client requirements and ideas best
- Take part in technical discussions with the team and the client
- Develop software using mainly C/C++, but other programming languages such as Python, Go, or Rust may be used occasionally.
- Take part in building and expanding the technical knowledge base & share the knowledge with your colleagues
- Fix bugs efficiently and effectively and find workarounds for blockers
- Occasionally, take part in technical pre-sales meetings
- Proficiency in C/C++ programming language
- 2+ years of experience in Linux low-level programming
- Strong understanding of operating system concepts, especially Linux kernel internals
- Experience with Linux network development and debugging
- Good networking knowledge
- Experience with Linux networking stack, including TCP/IP, UDP, sockets, etc.
- English at least B2 level, C1/C2 preferred
- Knowledge of communication interfaces such as PCIe, SPI, I2C, UART, DMA, GPIO, Ethernet, etc.
- Experience in developing network features (Ethernet, TCP/IP, routing, etc.)
- Familiarity with network hardware and interfaces such as PHYs, MACs, VLANs, bridges, etc.
- U-boot configuration and development
- Experience with ARM systems development
- Experience with driver/firmware development for embedded systems
- Ability to analyze and troubleshoot kernel panics, system hangs, and other low-level issues
- Experience with user-space driver development using the DPDK library
- Experience with network OS (e.g. SONiC)
- Flexible working hours and approach to work: fully remotely, in the office or hybrid
- Professional growth supported by internal training sessions and a training budget
- Solid onboarding with a hands-on approach to give you an easy start
- A great atmosphere among professionals who are passionate about their work
- The ability to change the project you work on