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
● 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
Please find the Job Description for C/C++.
Mandatory Skills
-Must have experience and Good understanding about pointers & memory in C/C++
-Must have experience in Unix/Linux IPC (semaphore, shared memory, socket, multi thread)
-Must have Debug skills : gdb, coredump analysis, network packet analysis
-Must have experience in Source code syntax parser (Preferably lex, yacc, bison, etc.)
-Must have worked on build tools : Makefiles, make, etc.
-Database : Preferably Oracle Good at SQL and stored procedures
Optional Skills
-Telegram development using C/C++
-Finance/Industry domain knowledge
-Japanese speaking skills
- Responsibilities:Troubleshoot and report RCA, propose solutions(how to fix)
- Debug identified problems and provide fixes swiftly
- Ability to write clear and concise documentation
- To understand and maintain legacy codebase
- Individual contributor, but also works closely with junior developers
- Review source code developed by peers
- Proactive to suggest and implement improvements on current products
- Design and develop new features based on requirement document
Location-Bangalore
Please share your updated resume to proceed further.
Thanks & Regards
Shruti(Assistant Executive-HR)
Nichi-In Software Solution Pvt Ltd
URL:- www.nichi.com
Domain Skills
Leads a team of Engineers for designing and architecting next generation platform solutions for clusters/Interior monitoring systems
Architecting the design for new features and technologies for Platform.
Expertise in programming using C, C++ and good understanding of OOAD & UML
Capable of analyzing HW schematics to realize the SW requirements.
Support and resolve issue resolutions and clarification for cross-functional teams.
Support team lead and project manager at program level in resolving open issues
Technical Skills
Expertise in memory management (eMMC, NAND)
Design, Develop and test device drivers in Linux/Android/QNX platform.
Multithreaded programming, usage of IPCs, Interrupts & synchronization methods.
Expertise in using the communication protocols (I2C, SPI & UART) in the device driver.
Expertise in handling Device Tree based configurations.
Strong C & C++ programming skills, OOPS concepts
Linux Architecture knowhow
Strong in software development for real-time embedded systems
Experienced in Design/Architecture Tools like EA
Expertise in SCM Tools like GIT/GERRIT
Ability to create and review changes for Gerrit and participate in a continuous integration loop
Ability to create/understand the build infranstructure using CMake for the middleware components
Experience in Unit test tools like cppunit, gtest.
Know-how and experience of SAFe/Agile Development
Knowledge in Automotive Safety Standards and Processes (ASPICE).
Logical, Analytical and Debugging/Problem-Solving skills
Qualifications
B.E/B.Tech in Computer Science with hands on with Embedded software development on RTOS
Mandatory Skills:-
C Programming and data structures.
Linux Internals ( System calls, IPC, Network Programming, POSIX Multi-thread programming)
Desirable Skills :-
C++ and OOPs knowledge
Linux system start-up sysvinit, systemd,
Bootloaders : uBoot
Message bus protocols like dbus
Basic Linux Device driver knowledge
Linux Build framework – Yocto-Bitbake, Makefiles
Python scripting
Debug using tools such as GDB
Version control - GIT and SVN
Flux Auto builds autonomous vehicle technology for commercial and industrial applications.
Flux Auto was founded in 2017 with the goal of democratizing autonomous vehicle technology and bringing its benefits to vehicles - new and old - around the world. We develop the various hardware and software technologies to make vehicles move and operate autonomously. Everyday our engineers are working to solve new and unique challenges for our clients in India, and North America.
We are a multidisciplinary team solving some of the most challenging problems in
autonomous technology and robotics. Join us in our journey to democratize autonomous mobility!
Experience required: 1 year of internship and projects done in similar domain.
About the role:
We are looking for a candidate with conceptual understanding of classical control systems and logic building. The candidate should be able to understand the existing control stack, tune the hyper-parameters and make necessary changes as per the need. The position requires you to have a basic understanding of automotive systems which will be an added advantage and also help in clear understanding of the application.
Team works towards development of algorithms and model based design for different features to achieve autonomy level 3 and level 4. The algorithms are continuously tested on simulation and vehicle system for verification and validation.
Requirements:
- Sound knowledge in controller design and analysis.
- Good understanding in optimisation based control algorithms.
- Experience with implementing PID controller for various unstable system.
- Experience with vehicle modelling and analysis.
- Good understanding of implementation/debugging/testing model and control algorithms.
- Candidate should have experience in programming concepts like OOPS in C++ and Python with robust and efficient coding.
- Experience in Matlab/Simulink, Stateflow.
- Good understanding in code generation, implementation and testing for real time intergration embedded system.
Responsibilities:
- Algorithm development for different control features.
- Testing of algorithm architecture along with tuning and validation.
- Working with simulation team to integrate and test models and algorithms into simulation environment for rapid development and validation.
- Tuning and validation of plant models to emulate real physical systems’ behaviour
- Co-ordination with other departments to maintain consistency and compatibility in department stack.
Good to Have:
- ROS and ROS2 experience
- Vehicle dynamics modelling and simulation.
- Experience with version control using Git.
Benefits:
- Health Insurance
- Employee Stock Options
- Work from Home
- Flexible work hours
- Monthly Team outings and events
- Budget for up-skilling
- Flexible vacation
Equal Opportunity Employer:
Flux Auto's employment decisions are made without regard to race, color, religion, national origin, gender, sexual orientation, age, gender identity, genetic factors, military/veteran status or other characteristics protected by law.
Vaccination Requirements:
Flux Auto is implementing new requirements for employees to be fully vaccinated from COVID-19.
Apply Now!
- Works towards developing Stable & Efficient Firmwares for Embedded
- Responsible for developing Firmware which are Stable, Efficient and scalable.
- Responsible to create coherent and scalable architecture designs.
- Responsible for understanding and utilizing best BLE / IOT
- Responsible for understanding various RTOS design principles.
- Qualification: B.E. / B.Tech / M.C.A. in Computer Sciences.
- Must Proficient in Embedded C, C++, BLE, Zephyr RTOS, nRF.
- Ready to work from home.
- Should have above 4 years of experience.
Job Description:
Looking for engineers with one of the below requirements:
- 2-5 years of embedded development experience in a Linux environment with C programming
- With Option1:
- EDK2 experience
- SCT experience
- knowledge of TPMs
- With Option2:
- worked on bootloaders or uboot
As part of the role, the Developers / Senior Developers will be responsible for Design, Coding, and Integration while meeting the quality targets set for the project. The Tech Leads will be additionally responsible for Estimation, Architecture, Design, Technical Reviews, Customer Interaction, Building, and Mentoring a talented team of Engineers
Knowledge & Skills:
- Technical Experience on Physical Layer of 3GPP LTE
- Experience on DSP Development\
- Proficient in C Good
- understanding of Wireless Communications
- Experience on MAC-PHY interface
- Behavioral Interpersonal skills & Ability to work in team
- Good Communication Skills Good Analytical Skills
Desired Skills and Experience: