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 :
Position Name: Network Software Developer
Experience: 4 to 8 Years
Work Mode: Work from Bangalore office (near Bellandur) all 5 days.
Mandatory:
- 4+ years of work experience in Networking domain.
- Highly proficient in C and Linux environment.
- Experience in working on Linux based large code base.
- Hands-on experience in working OpenWrt based router firmware.
- Hands on experience with IP and lower layer networking protocols.
Great to Have:
- Experience in working on Qualcomm and MediaTek chipsets.
- Experience in Linux device drivers and device trees.
- Experience in creating and applying Linux kernel patches.
Talented C++ Developer who has experience in design, development, debugging of multi-threaded large scale application with good understanding in data structures on Linux packaging, functional testing and deployment automation very good with problem solving.
Key responsibilities :
- Understand fundamental design principles and best practices for developing backend servers and web applications
- Gather requirements, scope functionality, estimate and translate those requirements into solutions
- Implement and integrate software features as per requirements
- Deliver across the entire app life cycle
- Work in a product creation project and/or technology project with implementation or integration responsibilities
- Improve an existing code base, if required, and ability to read source code to understand data flow and origin
- Design effective data storage for the task at hand and know how to optimize query performance along the way
- Follow an agile methodology of development and delivery
- Strictly adhere to coding standards and internal practices; must be able to conduct review code
- Mentor and possibly lead junior developers
- Contribute towards innovation
- Performance optimization of apps
- Explain technologies and solutions to technical and non-technical stakeholders
- Diagnose bugs and other issues in products
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
Must have / Good to have:
- 5-7years' experience with C++ development and relevant 3+yrs in modern version 11/14/17 would be a plus.
- Design and implementation of high-availability, and performance applications on Linux environment
- Advanced knowledge of C/C++, Object Oriented Design, STL
- Good with multithreading and data structures
- Develop back-end components to improve responsiveness and overall performance
- Familiarity with database design, integration with applications and python packaging.
- Familiarity with front-end technologies (like JavaScript and HTML5), REST API, security considerations
- Familiarity with functional testing and deployment automation frameworks
- Experience in development for 3-4 production ready application using C++ as programming language
- Experience in writing unit test cases including positive and negative test cases
- Experience of CI/CD pipeline code deployment (Git, SVN, Jenkins or Teamcity)
- Experience with Agile and DevOps methodology
- Very good problem-solving skills
- Experience with Web technologies is a plus.
Read less
Xfinito is building a portfolio in new product innovation, product contribution and infrastructure goals while providing individuals and teams the freedom to emphasize specific types of work.
Our work focuses on real –world problems that span the breadth of biomedical engineering, embedded systems, computer science, such as machine and deep learning, data mining, natural language processing, hardware and software performance analysis and much more.
JOB ROLE: EMBEDDED SOFTWARE ENGINEER
ROLES AND RESPONSIBILITIES:
- Work with Hardware, Systems and other multi-functional teams and deliver high quality software at fundamental layer of operating system including frameworks, daemons, drivers.
- You need to keep security and performance in mind, enable key features to improve privacy and prevent fraudulence
- The position requires high level thinking to design code solutions along with low level programming and excellent communications and leadership skills, with the ability to work in a fast paced environment.
RESPONSIBILITIES:
- Rich experience of programming on cryptography
- Profound understanding on Operating System concept
- Highly self-motivated and capable of work and finish tasks alone
- Comfortable and adaptable in a fast-paced environment
- Fluent in both oral and written English
- Strong communication and interpersonal skills; excellent judgment
EXPERIENCE:
- We as a team are looking for freshers or young professionals with 0-4 years of experience having a a self-directed, proactive approach to tackling problems and working through impediment and an ability to generate trust and build alliances with co-workers.
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
Experience in Object-Oriented design and Multithreaded programming
Strong analytical and problem solving skills
Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
Degree in Computer Science or Computer Engineering or related field
Independent team player with an eye for details and report on status and planning of own work.







