Staff Software Engineer – Embedded
- Source: LinkedIn
- VASUTTI Services Private Ltd.
- On-site
- Bengaluru
- Full-Time
- Staff
Job Description
We are looking for an experienced * Staff Software Engineer – Embedded * with 7+ years of relevant experience in embedded software development and system-level engineering.
The ideal candidate will have strong expertise in *embedded Linux, Linux kernel development, hardware-software integration, system architecture, device drivers, ARM-based platforms, networking, and low-level debugging*. The role requires someone who can work across the complete software development lifecycle and collaborate effectively with hardware and software engineering teams.
This is a hands-on technical role suited to an engineer who can contribute to architecture and design while also being comfortable working close to the hardware.
Key Responsibilities
· Design and develop software for complex embedded systems involving both hardware and software components.
· Contribute to system-level architecture, technical design, implementation, integration, debugging, and maintenance.
· Develop and maintain software for embedded Linux platforms.
· Design, develop, integrate, and debug Linux kernel drivers for multi-processor and heterogeneous systems.
· Work with ARM processors, DSPs, and feature-rich microcontrollers.
· Perform hardware-software integration, board bring-up, system validation, and troubleshooting.
· Develop and work with common hardware communication protocols such as *SPI, UART, and I2C*.
· Diagnose complex software and hardware issues using debuggers, emulators, JTAG and other appropriate development tools.
· Work with networking and data communication protocols including *TCP, UDP, RTSP, REST, SOAP, and WebSockets*.
· Contribute to software validation and development of tools/frameworks used to validate embedded hardware and software systems.
· Participate in software architecture, object-oriented analysis and design, and structured/functional decomposition.
· Apply appropriate design patterns, data structures, algorithms, and advanced programming techniques.
· Collaborate with cross-functional engineering teams on technical design and implementation.
· Contribute to code reviews, technical documentation, continuous integration, and engineering best practices.
Required Qualifications
· 7+ years of relevant experience in software/embedded systems engineering.
· Strong expertise in *system-level architecture for embedded hardware/software systems*.
· Strong understanding of the complete software development lifecycle: specification, design, implementation, integration, debugging, and maintenance.
· Thorough understanding of *Linux OS and Linux kernel*, particularly for embedded systems.
· Strong experience in *Linux kernel driver development*.
· Experience developing software for *multi-processor and heterogeneous embedded systems*.
· Experience with *ARM processors, DSPs, and microcontrollers*.
· Strong understanding of embedded hardware interfaces including *SPI, UART, I2C*, etc.
· Experience with *board bring-up and hardware/software system validation*.
· Proficiency in debugging software on PC host platforms and/or embedded hardware using debuggers, emulators, JTAG, or similar tools.
· Experience with networking and communication protocols such as *TCP/IP, UDP, RTSP, REST/SOAP web services, and WebSockets*.
· Experience with *Bash/shell scripting*.
· Familiarity with *containerization technologies such as Docker and Kubernetes*.
· Familiarity with *SQL databases*, including development and maintenance.
· Strong understanding of object-oriented analysis and design.
· Familiarity with structured and functional decomposition methodologies.
· Strong knowledge of design patterns, data structures, and advanced programming techniques.
· Strong written and verbal communication skills with the ability to collaborate effectively within a technical team.
Preferred Qualifications
· Experience in one or more of the following areas will be an advantage:
· *VoIP technologies*, including SIP and RTP.
· Streaming audio over networks using *GStreamer*.
· *Bluetooth Low Energy (BLE)*, including both Central and Peripheral roles and custom profiles.
· Full-stack web application development, particularly using *Node.js*.
· Additional programming languages such as ...
Skills
- linux-kernel
- Docker
- Kubernetes
- gstreamer
- NodeJS
- Python
- Java
- c-sharp
- React
- yocto-project
- eclipse
- microsoft-visual-studio
- visual-studio
- visual-studio-code
- Github
You missed this one - but you don't have to keep missing out. Try Club members get matched with open opportunities before they're gone, so you're always first in line, never last.
