
Sr. Engineer, Software
- Hyderabad, Telangana
- Permanent
- Full-time
- Design, develop, and debug BMC firmware for server platforms using C and C++
- Develop and maintain firmware components including device drivers, diagnostics, and hardware abstraction layers.
- Collaborate with hardware, systems, and validation teams to define requirements and troubleshoot integration issues.
- Contribute to the development of manufacturing test software and automation tools.
- Design and implement software in Python, Golang, and Shell for embedded platforms.
- Participate in code reviews, architecture discussions, and process improvements.
- Support network device integration (PHYs, NICs, Ethernet switches) and protocol-level debugging.
- Ensure compliance with security standards, including Platform Firmware Resilience (PFR) and Platform Root of Trust (PRoT)
- Strong proficiency in C and C++ programming for embedded systems.
- In-depth knowledge of BMC CPU architectures (e.g., ARM, RISC-V, or similar).
- Familiarity with the OpenBMC software stack, including build processes, configuration, and customization.
- Experience with embedded systems development, including low-level hardware interfaces (I2C, SPI, UART, etc.).
- Understanding of system-level debugging tools and techniques (e.g., JTAG, oscilloscopes, logic analyzers).
- Knowledge of Platform Firmware Resilience (PFR) and Platform Root of Trust (PRoT) security frameworks is preferred.
- Proficiency in Python, Golang, and Shell scripting.
- Working knowledge of I2C/I3C, SPI, UART, USB, PCIe protocols.
- Familiarity with networking concepts and devices (L2–L7, TCP/IP, load balancers).
- Experience with Docker, Kubernetes, and CI/CD workflows.
- Strong analytical and troubleshooting skills.
- Excellent communication and collaboration abilities.
- Bachelor’s degree in Computer Science, Electrical Engineering, or related field.
- 8+ years of experience in software development, with emphasis on embedded systems.