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
Position: Computer Vision Engineer
Experience: 2–3 Years
Location: Bengaluru, Karnataka
Employment Type: Full-time
About the Role
We are seeking a highly motivated Computer Vision Engineer to join our autonomy and avionics team. The role involves developing, implementing, and validating computer vision models and algorithms and pipelines for UAVs operating in both GNSS-available and GNSS-denied environments.
The ideal candidate should have a strong foundation in theory of deep learning and machine learning, strong understanding of electromagnetic spectrum, imaging fundamentals, camera principles, and mathematical concepts with hands-on experience in implementing these algorithms on embedded or real-time systems.
Key Responsibilities
- Design, develop, and optimise AI Models
- Make custom CNNs/ modify existing CNNs to suit specific problems at hand
- Handle end-to-end training flow
- Implement end to end inference pipelines on standard PCs as well as on embedded systems
- Understand performance benchmarks and assess the accuracy and inference times
- Implement traditional image processing algorithms
- Factor the code to leverage underlying hardware architecture
- Prune the networks for efficiency
- Integrate the system within the application framework using C++
- Work closely with perception, controls, embedded software, and systems engineering teams.
Required Qualifications
- B.E./B.Tech/M.E./M.Tech in Computer Science and Engineering, Electronics, ECE, Mechatronics, or a related discipline.
- 2–3 years of experience in relevant area
- Strong understanding of: Linear Algebra, Probability and Statistics, AI-ML-DL fundamentals, Image processing, Camera Functioning
- Strong programming skills in C++ and Python.
- Experience with MATLAB for algorithm development and validation.
- Familiarity with Linux development environments.
- Experience with Git version control.
Preferred Skills
- Experience with Camera, IMU Calibration and Synchronisation
- Experience with multi-sensor fusion.
- Experience working with NVIDIA devices
- Experience on FPGA will be an added advantage
- Full understanding of Git functionality
- Exposure to airborne software development processes and coding standards (e.g., MISRA C++).
Personal Attributes
- Strong analytical and problem-solving skills.
- Ability to work independently on challenging technical problems.
- Good communication and documentation skills.
- Passion for solving challenging problems
- Willingness to participate in field trials and flight testing.
- Team playwe
Key Requirements:
- Strong programming skills in Python and MATLAB
- Ability to develop, test, and optimize research-based models and algorithms
- Good understanding of data analysis, simulations, and problem-solving techniques
- Familiarity with technical documentation and research workflows
Preferred (Plus Point):
Prior experience working in a research environment or academic projects
Education:
Bachelor’s degree in Computer Science, Engineering (BE), or a related field.
Experience:
Minimum 2+ years of hands-on experience in Python and MATLAB.
Internship Opportunity – Embedded Systems & IoT
Join our hands-on internship program designed for engineering students passionate about core tech. You'll work on real-time projects involving microcontrollers, sensors, RTOS, circuit design, and IoT protocols.
Gain exposure to AI-integrated embedded applications and build a strong project portfolio with mentorship and placement support.
Location: Bangalore (Hybrid/On-site)
Duration: 2–3 months
Eligibility: Final-year students and pre final year (ECE/EEE/CSE/Mechatronics)
#EmbeddedSystems #IoTInternship #EngineeringInternship #CoreTechCareers #Microcontrollers #RTOS #PCBDesign #IoTProjects #KnowxInnovations #AIoT #TechInternship #SkillDevelopment #HandsOnLearning #BangaloreInternship #StudentInternship
Skills Required:
- Good experience with programming language Python
- Strong experience in Docker.
- Good knowledge with any of the Cloud Platform like Azure.
- Must be comfortable working in a Linux environment.
- Must have exposure into IOT domain and its protocols ((Zigbee & BLE ,LoRa,Modbus)
- Must be a good team player.
- Strong Communication Skills
Key Responsibilities:
1. Development, integration and testing of embedded software in the Embedded Linux RTOS
2. Integrate Application based on Adaptive AUTOSAR Platform
3. Contribute for Architecture, Detailed design, programming in C++ (11/14/17)
4. Perform Unit, Integration Tests of developed Application
5. Detail oriented systematic problem-solving approach in the embedded software.
6. Debug embedded software on hardware platforms for issue identification and resolution
Minimum qualification criteria:
1. Bachelor's degree in Electronics, Computer Science, Electrical Engineering, or related field
2. 2+ years of experience in software development in C or C++
3. 2+ years of experience in designing and implementing embedded systems for high performance, high reliability real-time embedded computing platforms
About us:
Arista Networks was founded to pioneer and deliver software driven cloud networking solutions for large datacenter storage and computing environments. Arista's award-winning platforms, ranging in Ethernet speeds from 10 to 400 gigabits per second, redefine scalability, agility and resilience. Arista has shipped more than 20 million cloud networking ports worldwide with CloudVision and EOS, an advanced network operating system. Committed to open standards, Arista is a founding member of the 25/50GbE consortium. Arista Networks products are available worldwide directly and through partners.
About the job
Arista Networks is looking for world-class software engineers to join our Extensible Operating System (EOS) software development team.As a core member of the EOS team, you will be part of a fast-paced,high caliber team-building features to run the world's largest data center networks.Your software will be a key component of Arista's EOS, Arista's unique, Linux-based network operating system that runs on all of Arista's data center networking products.
The EOS team is responsible for all aspects of the development and delivery of software meant to run on the various Arista switches.You will work with your fellow engineers and members of the marketing team to gather and understand the functional and technical requirements for upcoming projects.You will help write functional specifications, design specifications, test plans, and the code to bring all of these to life.You will also work with customers to triage and fix problems in their networks. Internally, you will develop automated tests for your software, monitor the execution of those tests, and triage and fix problems found by your tests.At Arista, you will own your projects from definition to deployment, and you will be responsible for the quality of everything you deliver.
This role demands strong and broad software engineering fundamentals, and a good understanding of networking including capabilities like L2, L3, and fundamentals of commercial switching HW.Your role will not be limited to a single aspect of EOS at Arista, but cover all aspects of EOS.
Responsibilities:
- Write functional specifications and design specifications for features related to forwarding traffic on the internet and cloud data centers.
- Independently implement solutions to small-sized problems in our EOS software, using the C, C++, and python programming languages.
- Write test plan specifications for small-sized features in EOS, and implement automated test programs to execute the cases described in the test plan.
- Debug problems found by our automated test programs and fix the problems.
- Work on a team implementing, testing, and debugging solutions to larger routing protocol problems.
- Work with Customer Support Engineers to analyze problems in customer networks and provide fixes for those problems when needed in the form of new software releases or software patches.
- Work with the System Test Engineers to analyze problems found in their tests and provide fixes for those problems.
- Mentor new and junior engineers to bring them up to speed in Arista’s software development environment.
- Review and contribute to the specifications and implementations written by other team members.
- Help to create a schedule for the implementation and debugging tasks, update that schedule weekly, and report it to the project lead.
Qualifications:
- BS Computer Science/Electrical Engineering/Computer Engineering 3-10 years experience, or MS Computer Science/Electrical Engineering/Computer Engineering + 5 years experience, Ph.D. in Computer Science/Electrical Engineering/Computer Engineering, or equivalent work experience.
- Knowledge of C, C++, and/or python.
- Knowledge of UNIX or Linux.
- Understanding of L2/L3 networking including at least one of the following areas is desirable:
- IP routing protocols, such as RIP, OSPF, BGP, IS-IS, or PIM.
- Layer 2 features such as 802.1d bridging, the 802.1d Spanning Tree Protocol, the 802.1ax Link Aggregation Control Protocol, the 802.1AB Link Layer Discovery Protocol, or RFC 1812 IP routing.
- Ability to utilize, test, and debug packet forwarding engine and a hardware component’s vendor provided software libraries in your solutions.
- Infrastructure functions related to distributed systems such as messaging, signalling, databases, and command line interface techniques.
- Hands on experience in the design and development of ethernet bridging or routing related software or distributed systems software is desirable.
- Hands on experience with enterprise or service provider class Ethernet switch/router system software development, or significant PhD level research in the area of network routing and packet forwarding.
- Applied understanding of software engineering principles.
- Strong problem solving and software troubleshooting skills.
- Ability to design a solution to a small-sized problem, and implement that solution without outside help.Able to work on a small team solving a medium-sized problem with limited oversight.
Resources:
- Arista's Approach to Software with Ken Duda (CTO): https://youtu.be/TU8yNh5JCyw
- Additional information and resources can be found at https://www.arista.com/en/
-
Perform analysis, design and implementation of assigned projects using sound engineering principles and adhering to business standards, practices, processes, and product / program requirements
-
Engage with global teams to effectively translate customer requirements to software requirements and identify potential solutions that are optimized to operate with in constraints of the product
-
Troubleshoot variety of complex software problems
-
Provide timely status updates and proactive communications on issues to the stakeholders.
-
Able to interface with internal and external stake holders regarding software issues.
-
Contribute as part of teams put together to meet overall organization initiatives/objectives
-
As a technical lead,
-
Guide team efforts towards successful deliverables.
-
Provide technical leadership to teammates through coaching and mentorship.
-
Able to effectively manage escalations and operate under crisis
-
Have the ability and willingness to acquire in-depth understanding of domain and existing products (beyond software) and apply that knowledge to develop new products and to deliver enhancements/ fixes for customer requirements.
-
Background in Industrial Automation
-
Prior experience in supervisory control systems software
-
Bachelor of Engineering degree in Computer Science/Information Science/Electronics/Electrical/Instrumentation with strong back ground in Industrial automation software
-
Strong C, C+ programming on variety of Windows platforms using Microsoft technologies
-
Sound knowledge of Computer Science fundamentals data structures, algorithms, operating system concepts
-
Excellent analytical skills, methodical problem-solving skills and troubleshooting skills
-
Prior experience of working in global teams and interfacing with multiple stake holders
-
Excellent communication skills (verbal and written) and the ability to interact with extended teams spread across the globe.
Post: Embedded Developer
SKILLS REQUIRED:
• Proficiency and Hands on Experience on Embedded C, various protocols such as I2C, SPI, RS232 etc.
• Testing and debugging of hardware and firmware
REQUIRED QUALIFICATION
• B.E. E&TC , Electronics
• Certification in Embedded System Development/Application
• Minimum 1 years of Experience in same domain








