

Senior BLE Firmware Software Engineer
About Company
https://espressif.com/">Espressif Systems (688018) is a public multinational, fabless semiconductor company established in 2008, with headquarters in Shanghai and offices in Greater China, India and Europe. We have a passionate team of engineers and scientists from all over the world, focused on developing cutting-edge WiFi-and-Bluetooth, low-power IoT solutions. We have created the popular ESP8266 and ESP32 series of chips, modules and development boards. By leveraging wireless computing, we provide green, versatile and cost-effective chipsets. We have always been committed to offering IoT solutions that are secure, robust and power-efficient. By open-sourcing our technology, we aim to enable developers to use Espressif’s technology globally and build smart connected devices. In July 2019, Espressif made its Initial Public Offering on the Sci-Tech Innovation Board (STAR) of the Shanghai Stock Exchange (SSE).
Espressif has opened a Technology Center in Pune (Baner), India, which will focus on embedded software engineering and IoT solutions development for our growing customers.
About the Role
Espressif is looking for Embedded Software Engineers to join the software department located in India. You will work in a diverse team where your colleagues are from Czech, Russia, India, Australia and so forth. Here, you get a chance to be a member of the core team in Espressif and work with talented engineers from all over the world.
The BLE Firmware Development Team is now focused on the development of the Bluetooth 5.x standard and BLE Mesh standard.
BLE FW Team is looking for a self-starting, high-technical, energetic individual with keen attention to details. The Candidate will be actively involved in:
- Development of Bluetooth Low Energy (BLE) Firmware for Espressif Bluetooth chips.
- Development of new firmware for BLE latest specification (BLE 5.x, BLE Mesh, etc).
- Development of BLE chip validation and Bluetooth Qualification.
- Research of cutting-edge and challenging Bluetooth technologies (BLE Audio, BLE Direction Finding, Next-Generation BLE Chip, etc).
- Supporting the existing firmware through feature additions, enhancements and maintenance.
- Working with systems team and cross-functional teams to deliver quality software following well-established software development processes.
- Resolving issues as reported by internal test teams as well as customers.
Requirements
Required skills
- Bachlor's degree or above in Electronic Engineering, Communications Engineering, Automation or other related majors
- Familiarity with Bluetooth Low Energy (BLE) protocol or BLE Mesh protocol
- Proven experience in developing BLE stack / firmware (2+ years, both BLE host and controller) or BLE Mesh stack (2+ years)
- Experience with software engineering processes and the full software development lifecycle including requirements, design, implementation, testing, and documenting in Continuous Integration environment
- Strong experience and proficiency in C programming (3+ years) for embedded platforms required
- Excellent problem solving and debugging skills
Bonus point
- Experience in developing BLE profiles and BLE applications (e.g. HID, ANCS, Homekit, etc)
- Good understanding of other networking protocol stacks is highly desired (e.g. Zigbee, IEEE 802.11, UWB, Lora, NB-IoT, etc)
- Strong Real-time systems and software engineering skills required (e.g. FreeRTOS, etc)
- One or more scripting languages (e.g. Python, etc)
- Experience with variety of software productivity tools (e.g. Git, Jira, etc)
What to expect from our interview process
- The first step is to email your resume or apply to the relevant open position, along with a sample of something you have worked on such as a public GitHub repo or side project etc.
- Next, post shortlisting your profile recruiter will get in touch with you via a mechanism that works for you e.g. via email, phone. This will be a short chat to learn more about your background and interests, to share more about the job and Espressif, and to answer any initial questions you have.
- Successful candidates will then be invited for 2 to 3 rounds of technical interview as per previous round feedback.
- Finally, Successful candidates will have interview with HR.
What you offer us
- Ability to provide technical solutions, support that fosters collaboration and innovation.
- Ability to balance a variety of technical needs and priorities according to Espressif’s growing needs.
What we offer
- An open minded, collaboration culture of enthusiastic technologist.
- Competitive salary
- 100% company paid medical/dental/vision/life coverage
- Frequent trainings by experienced colleagues and chances to take international trips, attend exhibitions, technical meetups and seminars.

About Espressif Systems India Pvt Ltd
About
Connect with the team
Similar jobs

Job Description
Are you passionate about making a difference in people's lives through groundbreaking products and services ? Look no further! Protectol Health is a pioneering pharma-tech company with a holistic approach that spans conventional pharmaceuticals, nutraceuticals, nutrients, and business safety. Our dedication to the value of "Life matters" is not just a slogan – it's ingrained in every facet of our work culture and offerings.
With dedicated divisions in Pharma, Technology, Nutraceuticals, Nutriments, and Business Safety, we drive impactful research and development activities that redefine industries and touch lives. Our operational footprint extends across the GCC countries and India, allowing us to reach and transform communities on a grand scale.
If you're enthusiastic about creating a positive impact and wish to be a part of an organization that values and prioritizes lives, Protectol Health welcomes you. Join us in our mission to shape a healthier present and future. Your expertise and passion will find a meaningful home here.
Roles and Responsibilities
As an Embedded Firmware Engineer, you will be responsible for:
● Leading the firmware development for our product line of safety and medical devices.
● Designing, developing, testing, and maintaining embedded firmware.
● Collaborating with cross-functional teams to define software requirements, specifications, and architectures based on product requirements and industry standards.
● Implementing firmware solutions that comply with ATEX certification, IEC 61508, and Functional Safety (SIL standards) for devices used in hazardous locations.
● Conducting thorough testing and validation of firmware to ensure reliability, accuracy, and compliance with safety standards.
● Optimizing firmware for power efficiency and performance to meet the life of portable and battery-powered devices.
● Implement firmware algorithms for sensor calibration, data processing, and user interface interactions.
● Assisting in hardware-software integration, debugging, and troubleshooting to ensure seamless functionality of the devices.
● Collaborating with Quality Assurance and Product Validation teams to ensure the highest quality of firmware deliverables.
● Participating in code reviews and providing constructive feedback to improve code quality and maintainability.
● Keeping abreast of emerging technologies, industry trends, and advancements in embedded systems for continuous improvement and innovation.
Skills and Qualifications:
● Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, or related field.
● 3+ years of experience in embedded firmware development for portable and wireless gas detectors and docking stations.
● Proficiency in C/C++ programming languages for embedded systems.
● Hands-on experience with a complete product development cycle is an add-on.
● Experience with STM32/STM8/ MSP430 or any other low-power microcontrollers for the development of low-powered devices.
● Experience in reading and optimizing analog data in various types of ADCs.
● Understanding of ATEX certification requirements and compliance.
● Understanding and practical experience with Functional Safety standards (SIL2/3 standards) in the development of safety-critical systems is an add-on.
● Experience with coding standards. (eg: Misra-C) Familiarity with System architectures and communication protocols like I2C, UART, SPI, etc. Knowledge of sleep modes and low-power optimization techniques for battery-operated devices.
● Experience in developing and using custom segment LCDs (TN, STN, etc.) used in battery-powered ultra-low power devices.
● Experience with software development tools, version control systems, and bug-tracking systems. Strong analytical and problem-solving skills with attention to detail.
● Excellent communication and teamwork skills.
● Advantages for individuals who thrive in a startup setting.
Work Culture
At Protectol Health, we prioritize our diverse and talented team. We offer flexible work arrangements and resources for well-being to support our employees' personal and professional growth. By putting people first, we attract and retain top talent and drive innovation toward our mission of improving health and well-being


● Write Effective Codes In C++, Develop Software For Embedded Systems Based On STM32, NRF
● Support And Improve Existing Software
● Prepare Documentation For The Created Software. Qualifications
● Confident Knowledge Of C++ 17, Object-Oriented Programming, Embedded Software Development
● Proficiency With Microcontrollers Of The STM32 And / Or NRF Series
● Experience With RTOS
● Familiarity With Git, Linux
● Technical English
● Knowledge Of Python As An Advantage
● Any Experience With UAS \ UAV \ Drones is much appreciated


- Strong C/C++ programming hands on experience
- Should have work experience on firmware development with strong Linux internals.
- Very good development, design and debugging experience on embedded firmware.
- Added advantage to have experience on Systems management/Out of Band/BMC domain experience
- Good to have automation experience using Python or shell scripting
- Excellent communication and problem solving skills
- Experience on tools like JIRA, Yocto, Visual studio, etc.

Location: Bangalore
Experience: 4 to 12 years
JD:
- Familiar with AUTOSAR BSW and RTE, architecture, specifications, and configuration tools
- Strong fundamentals programming in C, embedded system concepts, and software build process
- Strong customer orientation, willingness to meet deadlines, and self-management skills
- Deep passion for solving problems to resolution, including root cause analysis skills
- Ability to work and collaborate in a dynamic team environment



Skills You'll Need
- At least 3 years of C++ programming experience in a Linux environment.
- Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
- Experience in Object-Oriented design and multi threaded programming
- Experience in creating/supporting cross-platform multi threaded applications
- Strong analytical and problem solving skills
- Ideally some experience in developing low latency systems
- Experience with trading or execution systems preferred
- Bachelor's degree in Computer Science or Computer Engineering or related field
- Reliable and predictable availability
Ideally in Mumbai Metro Area but open to anywhere for the right candidate.


Developer Software (Embedded)
Location: Udaipur
Qualification: BE in (Electrical/Electronic Engineering)
Technical
· Experience in design and development with structured Software Development Life Cycle for embedded applications
· Proficiency in C language or assembly programming, Microcontroller, Micro Processor.
· Preferably experience in working and understanding the metering domain
· Proficiency in development processes, tools/IDE (KEIL, IAR, Eclipse) & test automation
· Unit testing skill
· Interface RS485, RS232, SPI, I2C, USB, LCD, Keypad, Flash, EEPROM
· Coding Standards and MISRA rules are preferable
· Knowledge of ARM / MIPS / Coldfire / MSP430 / dsPIC / 8051 and other popular processor
· Experience in working on communication products based on GPRS, ZIGBEE, ZWAVE, Ethernet, Power line communication, DLMS, MODBUS
Job Description
· Understand improvement requirements and develop improvement solutions & package, according to technical specifications / high-level solution design
· Responsible to carry out effective and timely unit testing, in order to, deliver first time right solutions
· Development of automation framework/compiler / emulators to speed up business delivery cycle in NPI programs
· Keep track of new trends, continuously learn and self-develop skills by ensuring effective knowledge sharing through group meetings and training. Impart training to new joiners as and when assigned
· Proficiency in developing embedded software design with high reusability using relevant tools and BSM or flow diagram


Software Developer (B.Tech, Linux+CPP+ROS)
Job Description:
- Design, implement and deliver custom solutions using the current robotics framework.
- Bug fixing and improving of current application framework.
- Design and implement tools to facilitate application development and testing.
- Work with team members in deployment and field testing.
Requirements:
- Bachelor Degree / Masters in Engineering (ECE and CSE preferred)
- Work experience of 3 to 10 years in software programming.
- Full understanding of software engineering.
- Proficiency in C/C++ and Python programming for Linux based systems.
- Basic Knowledge of Robot Operating System(ROS) is mandatory.
- Good understanding of the algorithms and control loops.
- Able to use tools to manage source code, preferably Git / GitHub.
- Knowledge of video streaming from edge devices is a plus.
Perks and Benefits for the employees
- Paid Leaves (12CL+12SL+12 public holidays )
- career development
- Health insurance
- Work life balance
- Employee recognition and reward programs
- Flexible work hours
- Five working days.
- Remote job for now


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.


- 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


