Job Description
• Develop Linux user-space firmware for Ubiquiti networking products;
• Collaborate with global firmware, hardware, cloud, and product teams throughout the product lifecycle;
• Design, implement, and maintain system services, management daemons, libraries, and product business logic;
• Develop network-facing applications using sockets, IPC mechanisms, netlink, and event-driven I/O;
• Integrate open-source packages and third-party components into our OpenWrt-based firmware and build systems;
• Maintain and improve existing firmware, focusing on stability, performance, security, and resource efficiency;
• Develop interfaces between low-level platform components, device-management services, and higher-level product features;
• Diagnose complex laboratory and field issues using logs, packet captures, tracing, core dumps, and profiling tools.
Requirements
• 3+ years of embedded Linux software development experience using C or C++;
• Strong understanding of Linux internals, including processes, threads, memory management, filesystems, signals, and service lifecycle;
• Experience with Linux networking, sockets, IPC, netlink, epoll, and asynchronous application design;
• Solid networking fundamentals, including Ethernet, TCP/UDP, IPv4/IPv6, routing, bridging, firewalls, and DNS/DHCP.;
• Experience with Git, Bash, cross-compilation, toolchains, and embedded build systems such as OpenWrt or Buildroot.
• Experience with AI tools – Claude, Codex, etc.
• Fluent in English and Lithuanian.
Nice to have:
• Hands-on experience with OpenWrt components such as procd, ubus, UCI, rpcd, or netifd;
• Experience designing APIs, configuration systems, state machines, or management services for embedded products;
• Knowledge of Linux security, process isolation, secure update mechanisms, and application hardening;
• Experience with system performance analysis, memory-leak detection, crash analysis, and resource optimization;
• Familiarity with BSPs, bootloaders, Linux device drivers, or hardware bring-up;
• Python or Bash scripting experience and familiarity with automated testing and CI/CD systems;
• Experience maintaining or contributing to open-source software.
Company offers
• International work environment and work with global development teams;
• Ability to deliver software that is used by millions of people across the globe;
• Opportunity to leverage and integrate modern AI tools into product development;
• Access to all Ubiquiti products;
• Medical insurance;
• Hybrid approach – office in Kaunas;
• Flexible work hours;
• A-class office with all the necessities – snacks, drinks, free lunches, free parking, etc!