

Similar jobs
The Role:
We are seeking a highly skilled Sr Embedded Software Engineer (Python & C++) to manage and improve the software development lifecycle for device firmware systems. The primary focus of this role is to ensure firmware operational reliability, fail-safe implementation, certification compliance, and robust production deployment.
This role is ideal for an engineer experienced in system-level software, firmware validation, testing automation, and production readiness — but not focused on low-level hardware design.
Experience: 6-10 years
Job Location: Hyderabad
Job Type: Permanent
CORE FOCUS AREAS
• Ensure firmware operates reliably in production environments
• Implement and validate fail-safe mechanisms and fallback logic
• Maintain certification compliance across firmware releases
• Drive robust, repeatable production deployment pipelines
• Support field debugging and OTA update validation
IDEAL CANDIDATE PROFILE
• Strong hands-on experience in Python and C++ development
• Background in system-level software and firmware validation
• Experience with testing automation and production readiness
• Comfortable working closely with embedded engineers
• Not required to have low-level hardware design expertise
KEY RESPONSIBILITIES
FIRMWARE OPERATIONAL STABILITY
• Ensure firmware operates reliably in production environments
• Implement and validate fail-safe mechanisms and fallback logic
• Monitor watchdog systems, timeout handling & safe state transitions
• Work closely with embedded engineers to validate firmware behavior
PYTHON & C++ DEVELOPMENT
• Develop firmware communication layers & device control applications
• Build diagnostic tools and test automation frameworks
• Optimize performance and memory handling in C++ applications
• Develop production-ready Python tools for deployment, logging & validation
FAIL-SAFE & SAFETY IMPLEMENTATION
• Implement safe boot validation, error recovery & redundancy logic
• Build communication retry systems & safe shutdown protocols
• Design state machines for controlled device operation
• Ensure safe-state transitions on power, comms or hardware failure
PRODUCTION DEPLOYMENT & VALIDATION
• Create secure and repeatable firmware deployment pipelines
• Implement boot image validation, signature verification & rollback
• Develop health monitoring and diagnostic utilities & CI/CD Pipelines
• Support field debugging and OTA update validation
Linux Environment
• Work in Linux-based environments for firmware development, debugging, and deployment — including shell scripting, process/service management, and system diagnostics.
• Own unit testing, integration testing & production release management
• Ensure code quality and compliance with internal standards
IoT + AI
Building the tech behind India's Reverse Vending Machines
SUCCESS METRICS
• Firmware reliability — stable, uninterrupted operation in production environments
• Fail-safe coverage — validated fallback logic, redundancy & safe-state transitions
• Linux Environment - Use Linux for development till deployment
• Deployment success rate — secure, repeatable pipelines with clean rollbacks
• Code & release quality — test coverage, code review discipline & CI/CD health
• Field performance — OTA update success and turnaround on field debugging
Role Overview
We are looking for a skilled Systems Engineer with strong expertise in Ansible automation, Kubernetes, and system-level scripting. This role focuses on building scalable automation and managing GPU-aware infrastructure.
Key Responsibilities
- Develop and maintain automation workflows using Ansible
- Write and optimize Ansible playbooks for infrastructure and application deployment
- Automate system-level tasks using Bash scripting
- Debug and test automation workflows for reliability and scalability
- Manage Kubernetes clusters, including:
- Pod lifecycle management
- Networking and firewall configurations
- GPU resource mapping and scheduling
- Custom Resource Definitions (CRDs)
- Collaborate with engineering teams to integrate automation into CI/CD pipelines
- Ensure secure and scalable infrastructure for AI workloads
Requirements
- Strong hands-on experience with Ansible and automation workflows
- Solid Linux system administration experience
- Proficiency in Bash scripting
- Deep understanding of Kubernetes (pods, networking, CRDs, GPU scheduling)
- Experience in debugging and optimizing automation systems
- Strong problem-solving and ownership mindset
Nice to Have
- Experience with GPU workloads or HPC environments
- Exposure to monitoring tools like Prometheus and Grafana
Candidate should have 6-9 years of experience in IoT embedded systems. He/ She should be
passionate, tech savvy, academically sound, have interest in embedded devices and
technologies.
Experience:
• Exposure to Microcontroller/Microprocessor Architecture /Family e.g. ARM Cortex,
Microchip, Xtensa ESP32, TI CC32XX, STM32
• Knowledge of Bare metal and any RTOS (Free RTOS, uC OS, EmbOSs, VxWorks, QNX)
• Knowledge of Microcontroller peripherals and low level drivers e.g. ADC, DAC, I2C, SPI,
UART, CAN, RS485, DMA, Ethernet, Display
• Knowledge of networking concepts like OSI layers, embedded TCP/IP stacks and common
IP protocols
• Knowledge of RF protocols WIFI, Bluetooth/BLE, IoT Cellular
• Knowledge of IoT communication protocols MQTT, COAP, AMQP
• Knowledge of Build toolchains and framework such as IAR, GCC, Keil, Mplab
• DFMA and DFMEA, Design release process
• Coding standards, guidelines and compliance tools
• Version control and repositories using git tools
• Software quality assurance and automated testing tools Experience / Skills Embedded software design cycle
• Documenting Software Design (flow charts, state diagram, logic design, analysis, implementation, debugging and testing etc)
• Good hands-on programming in Embedded C, C++.
• Programming in scripting languages such as batch, shell, python is a plus.
• Experience with AWS/Google cloud for device connectivity. Exposure to IoT cloud services. e.g. AWS IoT
• Software and Hardware integration testing and troubleshooting
• Protocol debugging using protocol analyzer.
• Understanding of Schematic/ Hardware design around microcontrollers like ST, TI, Atmel, Microchip, ARM core
The Senior Software Engineer works with an experienced cross-functional team to deliver innovative wireless communication security products. They will utilize real world knowledge and a disciplined approach to product development, and adapt readily - Time-To-Market demands, ensuring product quality and timely delivery in a highly dynamic market environment.
ESSENTIAL FUNCTIONS :
- Design and deliver server platform based software products from conceptual stages to production delivery.
- Work independently on all phases of server centric software development including specification, architecture design, rapid prototyping, efficient coding, integration, debug and unit testing. Support UL and EN regulatory compliance
- Work collaboratively and effectively as part of a small team on fast paced projects that have tight deadlines.
- Support manufacturing life cycle for new products from NPI to production run and incremental software release of functionality.
- Lead, train, and mentor junior engineers
- Document and present design requirements to staff
- Possess a demonstrated ability to communicate with customers via email and phone
REQUIRED SPECIFIC JOB KNOWLEDGE, SKILL AND ABILITY :
The individual must possess the following knowledge, skills and abilities and be able to explain and demonstrate that he or she can perform the essential functions of the job, with or without reasonable accommodation, using some combination of skills and abilities.
- Must be an excellent SW developer. We expect experience developing software C/C++ in Linux and Perl. Other scripting languages is a plus (i.e. Python).
- Strong experience with SQL, Database design (MySQL a plus)
- Experience with Network Security Administration and understanding of the full SDLC.
- Experience with Multithread, Socket connection, OpenVPN server setup, OpenSSL, Certificate, Encryption, and TCP/IP troubleshooting.
- Experience with Testing tools, virtualizing servers, and using source control (SVN a plus).
- Experience with Linux development infrastructure, tool chain and build environment (Jenkins a plus).
- Experience developing both Linux application software; installing Linux software and configuring Linux systems.
- Experience with Application server remote update, and Apache Server authentication.
- Proven record of designing and delivering complex networking products from inception to production delivery.
- Previous experience developing quality software for commercial products.
- Experience with communication systems involving wireless, radio, security and mesh networking technologies is a plus.
Experience with OSI networking protocols and applications is a plus.
- Experience with system development tools, including Source-Level Debuggers, Protocol Analyzers (Wireshark), Code Analysis tools, etc.
- Experience with any of the following is nice to have: Apache Server, GPIO, TCL/Tk, BACnet, Cloud server setup, and WebGUI design (javascript and jQuery a plus).
- Maintain UNIX/Linux Operating System
- Create and maintain environment for running batch jobs associated with daily batch cycle and batch reporting subsystem
- Work with LAN/Network personnel to ensure compatibility with LAN applications and peripheral hardware to provide end users with reliable and stable working environment
- Support and maintain other vendor database software installed on the LAN servers
- Perform User Access Management.
- Experience supporting day-today administration functions including user account management and script creation
- Apply Patches and Upgrades as necessary. Perform tasks for Backup and Recovery Management including High Availability
- Install and configure storage arrays and allocate SAN and NAS storage to different OS platforms and/or administer ZFS storage pools, file system, snapshots, and clones.
- Experience in Linux hypervisors KVM, XEN.
- Good knowledge on open stack administration and service operations.
- Good experience on veritas net backup software.
- Strong experience in public clouds AWS, AZURE, GCP.
- Solid knowledge of protocols such as DNS, HTTP, LDAP, SMTP and SNM
- Good understanding on AWS outposts hybrid environment.
- Good experience in the windows server and OS side.
- Experience in Monitoring platforms like Zabbix, ELK, Grafana.
- Troubleshoot Hardware Issues, Installation, and testing of computer peripherals
- Perform/Implement Security Monitoring and audit to identify any possible security intrusions or breaches.
- Collaborate with other teams and team members to develop automation strategies and deployment processes
Qualifications:
- Degree in Computer Science, Computer Engineer, or other related courses
- Minimum of 10 years’ experience
- In-depth knowledge of Linux: RedHat, CentOS, Debian, etc.
- In-depth knowledge in Linux virtualization
- good knowledge of UNIX and LINUX Operating systems, file systems, storage environments, and networking protocols
- Knowledgeable in Unix, Linux, Unix, Linux shell scripting. Practical scripting skills in Shell, PERL, Batch, Python
- good DBA skills MySQL, MariaDB, PostgreSQL, Timescale, MongoDB
- Basic Messaging and Collaboration concepts and tools, Server Virtualization
- Practical understanding of Networking - routing, subnets, UDP, TCP, IP, and VLANs
- Backup and Storage Management (Netback up mandatory).
- Familiar and can identify or interpret crash dump files and core dump files and monitor System Logs
- Become a member of the team responsible for IoT hub software development. IoT hub provides IoT functionality (smart home, smart appliance,…) to mobile and web clients and runs on Linux-based host like smart home hub, broadband router, STB, etc.
- Implementation and/or extension of leading wireless/wired protocols (ZigBee, Bluetooth, IP-based,..) for communication with smart devices
- Development of new features for control and monitoring of smart devices and automation of IoT system
- IoT hub software porting on various hosts
- Software optimizations
Position: C++ Developer
Location: Hyderabad
Requirements:
- Strong C++ skills obtained in multiple years of C++ programming experience (at least 3 years)
- Good understanding of embedded system development based on Linux OS
- Knowledge of advanced programming concepts (e.g. Multi-Threading, OS internals, Networking, IPC mechanisms)
- Solid understanding of computer networking (TCP/UDP/MQTT/SSL)
- Solid understanding of Git source code management system
- Troubleshooting skills
- B.Tech/M.Tech/MCA in computer science/ECE/EEE
- Fluent English
- Work directly with the other Software/Firmware Engineers and Electrical/RF/Systems Test Engineers to write needed software
- Design and implement software platform for firmware on embedded CPUs with multiple OS such as Windows, Linux, FreeRTOS, TI-RTOS and embedded Linux
- Use compliers, debuggers revision control and automated build systems.
- Design/develop components of software platform for use by other developers to extend its capabilities and build custom applications/behavior on top
- Develop build methodologies, debugging tools/utilities
- Develop and release Software using Agile methodology
- Write unit tests and support continuous integration and automated test methodology
- Brainstorm for new ideas and ways to improvement product and processes
- Consult with peers for feedback during debug/testing stages
- Document and maintain design processes
MINIMUM QUALIFICATIONS, Roles and responsibilties:
- BS/MS in Computer Engineering or related technology field
- 10+ Years of Experience in Software Development
- Experience in writing code for embedded systems, Proficient in C/C++ coding and intel DPDK
- Understanding of network interface drivers
- Experience with VMware, AWS, MSAzure, Google Cloud Platform.
- Knowledge of micro services and containerization
- Experience in building Networking Security Products
- Knowledge of Networking, TCP/IP Protocol Suite
- Design, code embedded features/solutions for the ShieldX Product
- Design write, extend and troubleshoot datapath code for switching, routing, NAT, TCP and TLS
- Work closely with other development , Product and Test Teams
- BS/MS in Computer Engineering or related technology field
- Excellent communication and Team player skills
- Should be a self-starter and be able to adopt to dynamic fast-paced environment.
- Able to work 40 hours a week










