We are looking for a senior embedded software engineer to lead development for broadband and video devices, working across Embedded Linux, ARM, Android, Wi-Fi, and networking. You will mentor engineers, drive technical decisions, and collaborate with cross-functional teams. Fluent English (written and spoken) is required.
Responsabilities
- Lead design, development, and maintenance of embedded software for broadband and video devices, focusing on Embedded Linux, ARM Linux, Android, Wi-Fi, and MPEG.
- Architect and optimize firmware, middleware, system services, and platform software for ARM-based processors and embedded hardware.
- Write secure, maintainable C/C++ code with a focus on memory management, concurrency, performance, and system stability.
- Debug complex hardware-software issues using advanced tools (GDB, strace, tcpdump, Wireshark, perf) and drive root-cause analysis for production problems.
- Build and enhance automation frameworks, diagnostic tools, and test suites to improve development efficiency and product quality.
- Drive technical direction across the team, lead code reviews, and establish best practices for secure and maintainable software.
- Mentor junior and mid-level engineers through design feedback, code reviews, and debugging guidance.
- Document software designs, architecture proposals, build workflows, and troubleshooting procedures.
Requirements
- 5–7 years of experience in embedded software development.
- Mastery of C/C++ for embedded systems: memory management, concurrency, IPC, and performance optimization.
- Advanced Embedded Linux experience: system programming, process management, IPC, file systems, and user-space/kernel-space interactions.
- Strong ARM Linux skills: cross-compilation, bootloaders, device trees, kernel configuration, and platform integration.
- Experience with Android/AOSP: system architecture, HAL layers, native services, JNI, and platform customization.
- Solid networking knowledge: TCP/IP, DHCP, DNS, NAT, IPv4/IPv6, QoS, and packet-level troubleshooting.
- Experience with Wi-Fi standards, diagnostics, performance tuning, and roaming; and with video/media technologies (MPEG, codecs, DRM, streaming).
- Proficiency with build systems (Yocto), toolchains (GCC/Clang), scripting (Python, Bash), and version control (Git).
- Bachelor's degree in Computer Science, Electrical Engineering, Computer Engineering, or related field. Master's degree preferred.
- Fluent English (written and spoken) — required for technical documentation and cross-functional collaboration.
- Certifications in Linux, embedded systems, Android, networking, or cybersecurity are a plus but not required.