
SSE- Embedded Applications
at Electric vehicle charging infrastructure solutions.( SC1)
- Develop embedded Linux Applications
- Work with a worldwide team to integrate the product to meet the requirement
Required Qualifications:
- Degree in Computer Science from a top-tier institution
- Relevant full-time work experience of 4+years
- Strong foundation in computer science, Object-Oriented software, unit testing & test automation with scripts
- Ability to self-teach.
Mandatory Technical Skills:
- Expert level programming in C/C++
- Linux systems programming, data structures & algorithms
- Networked applications
Desirable Technical Skills:
- Linux Board Bring up, device drivers would be an advantage

Similar jobs
Key Responsibilities
1. Kernel Lifecycle & Maintenance
Upstream Alignment: Lead the strategy for upgrading enterprise kernels (e.g., migrating from LTS 5.15 to 6.6) while maintaining binary compatibility where required.
Patch Porting: Expertly port functional and performance patches between disparate kernel versions, resolving complex code conflicts and API changes.
CVE Mitigation: Monitor the Linux Kernel Mailing List (LKML) and security advisories to identify and backport CVE patches from upstream to production environments.
2. Deep-Dive Debugging & Stability
Panic Analysis: Act as the final escalation point for Kernel Panics and "Oops" messages. Utilize kdump, crash, and gdb to perform post-mortem analysis of vmcores.
Boot-Time Resolution: Debug critical failures during the early boot process (UEFI handoff, initramfs, and early kernel init) where standard logging is unavailable.
Performance Tuning: Use ebpf, ftrace, and perf to identify bottlenecks in memory management, scheduler latency, or I/O throughput.
3. Driver Development & Hardware Integration
Driver Ownership: Design, develop, or maintain at least one Open Source or Proprietary Device Driver (Network, Storage, GPU, or Character devices).
Hardware Abstraction: Interface directly with hardware registers, managing DMA mappings, and optimizing interrupt handling (MSI-X, Threaded IRQs).
Out-of-Tree Management: Maintain driver compatibility across kernel updates using DKMS or similar frameworks.
4. Infrastructure & Automation
Registry Management: Oversee the distribution of custom kernel builds and modules via GitLab Container/Package Registries.
CI/CD for Kernel: Build automated testing pipelines (Hardware-in-the-loop) to validate kernel stability before enterprise-wide deployment.
Required Technical Skills:
Languages: Mastery of C/C++ Programming (C is preferred)
Kernel Internals: Deep understanding of VFS, Memory Management (MMU/Paging), Process Scheduling, and Networking Stacks.
Debugging Tools: Expert-level use of kprobes, trace-cmd, valgrind, and hardware-level debuggers (JTAG/Serial Console).
Build Systems: Proficiency with Kbuild, Makefiles, and building RPM/Debian packages for kernel distribution.
Security: Hands-on experience with SELinux/AppArmor policy development and kernel hardening (FIPS, KSPP).
- Developing HMI application in Qt or similar UI frameworks
- Develop C++ or Rust backends for the HMI
- Understand and optimize potential performance bottlenecks
Relevant experience: 2-3 years
Responsibilities:
- Should be good at, C, C++, Linux driver development
- Should have worked in protocol like i2S, SPI, i2C. rf, 6lowpan, Tcp / Ip stack etc..
- Experience in porting MbedOS , FreeRTOS to different boards is good.
- Analyzing and enhancing efficiency, stability and scalability of system resources
- Design, develop, code, test and debug system software
- Provide post production support
- Interface with hardware design and development
Requirements:
- Proven working experience in software engineering
- Experience in hands-on development and troubleshooting on embedded targets
- Solid programming experience in C or C++
- Adequate knowledge of reading schematics and data sheets for components
- Strong documentation and writing skills
Note: Self-motivated, goal oriented and good analytical skills.
Summary:
The embedded systems engineer designs, develops, tests, and maintains embedded systems. The engineer will identify and fix issues and work collaboratively with engineers, product managers, and others on various teams.
Responsibilities:
- Design and build embedded systems, including embedded system firmware
- Test and debug the systems
- Monitor and maintain the system after development
- Improve system efficiency and stability after development
- Collaborate with customers to create systems based on their needs
Requirements:
- Minimum of a bachelor's degree in computer science or engineering
- Professional experience in embedded systems
- Significant programming experience in C or C++
- Experience in trouble-shooting embedded systems and microcontroller peripherals
- Experience in working in real-time operating systems
- Experience in interfaces, IP protocols, and hardware subsystems
- Proficiency in working with common embedded systems communication protocols
- Strong interpersonal and writing skills
- Ability to work as part of a team
- Exceptional analytical and problem-solving skills
- Self-motivated and passionate about your work and embedded systems
- Always eager to learn and improve
Primary Skill: System Software Development
Skill sets req:
- Linux porting/development; Linux kernel concepts
- Expertise in Linux BSP device driver development
- Customizing kernel + Porting + Developing Applications Linux Device Driver Development (Character devices) Good Concepts of Network Drivers File Systems Concepts
- Expertise in porting, network stack; optimization, network programming
- Bootloader/Uboot porting
- Camera driver development (Good to have)
ROLES AND RESPONSIBILITIES:
• Articulate complex problems, communicate viable architecture and design approach in a clear and concise manner.
• Thrive in a collaborative team environment and work with ambiguous product requirements.
• Evaluate opensource technologies, development stack and strive for new learning, continued growth by applying industry best practices and processes.
• Provide thought leadership in cloud based VoIP(Voice/WebRTC) services and bring your passion for technology to motivate and inspire on a day to day basis.
SKILLS REQUIRED
• 4+ years experience in building highly available, fault tolerant and scalable real-time communications(Voice and WebRTC) systems in the cloud (AWS preferred).
• Demonstrated history of building complex, high-performance applications in C/C++.
• Proven expertise in network and system performance optimizations(including kernel, containers and virtualization technologies).
• Proficiency in telecom protocols (SIP, SDP and RTP/RTCP) and internet protocols(IPv4/IPv6, TCP and UDP) is desirable.
• Deep understanding of all aspects of WebRTC from audio codecs, to networking (ICE, STUN, TURN) up to server side components needed to deploy the technology at scale (SFU, MCU, Relays) and network security(TLS, SRTP).Strong analytical, problem solving and troubleshooting skills.
• Programming experience with Python, Golang and Lua will be a plus.
• Prior experience working with Asterisk, FreeSWITCH, RTPEngine, Kamailio, or OpenSIPs will be a plus.
Experience in Object-Oriented design and Multithreaded programming
Strong analytical and problem solving skills
Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
Degree in Computer Science or Computer Engineering or related field
Independent team player with an eye for details and report on status and planning of own work.










