- Work independently and with fellow seniors on the development of new complex firmware and software for embedded systems.
- Participate in identifying and defining requirements and specifications for a given project.
- Assist in documenting and reviewing overall architecture and individual software components.
- Attend design team meetings to provide input into the overall architecture of projects.
- Support Sustaining Engineering in solving design errors and/or modifications of existing released products.
- 3-6 years of experience in Software Engineering
- Expertise in C / C++ languages
- Ability to read schematics
- Familiarity with common peripheral protocols (SPI, UART, I2C, etc.)
- Experience using tools such as logic analyzers and oscilloscopes
- Proficiency with version control systems (GIT, SVN, etc.)
- Working knowledge of Linux kernel configuration or driver development
- Knowledge of object-relational databases (SQL / PostgreSQL)
- Knowledge of Node / application development
- Practice in Agile development
- Experience with Real-Time Operating System (RTOS)
- Experience with ARM Cortex-A Processors
- Networking (TCP, UDP, RTSP, Client / Server apps) experience
- Familiarity with Linux SDK build systems (Yocto / Buildroot)
- Familiarity in implementing Security features (encryption, key management, secure boot)
- Familiarity with Bluetooth Low Energy (BLE)
- Familiarity with front-end development
Senior Software Engineer - Bengaluru, India - HME
Description
HME's Wireless Team is currently seeking a Senior Software Engineer - Applications to innovate, design, and develop software for embedded systems. This role offers a unique opportunity to join a talented team of engineers working on a diverse technology stack, ranging from low-level drivers up to Linux applications communicating with the cloud. In this position, you will be working closely with product managers, R&D, Hardware, and QA teams to deliver software solutions for the next generation of HME's flagship product in a fast-paced agile environment. A successful candidate will be able to define requirements and specifications, lead technical discussions, and mentor junior team members.
What you will do in the position:
Required Qualifications:
Preferred Qualifications: