You’ll be our: Firmware Engineer
You’ll be based at: IBC Knowledge Park, Bengaluru
You’ll be Aligned with: Embedded Manager
You’ll be a member of: Vehicle Software
What you’ll do at Ather:
A successful candidate is expected to lead the Firmware development and integration effort for various Ather products and be responsible for qualifying and integrating FW at various stages with HW. Responsibilities include:
-
Understanding requirements from different stakeholders and translating these to application features
-
Writing high quality source code to program complete applications within deadlines
-
Unit-testing code for robustness, including edge cases, usability, and general reliability
-
Performing functional and non-functional testing
-
Troubleshooting and debugging applications
-
Designing creative prototypes according to specifications
-
Evaluating existing applications to reprogram, update and add new features
-
Developing technical documents and handbooks to accurately represent application design and code
-
Identifying and communicating possible risks along with preventive and corrective measures
-
Designing HW/SW integration while working with HW/Algorithms/Cloud teams to deliver an integrated solution.
Here’s what we are looking for:
Must have:
-
ECU Software development experience (any of the ARM based Auto ECUs Body Electronics/Infotainment/ Powertrain/Cluster)
-
Previous experience with Low level firmware, Boot loaders, Device Drivers development
-
Hands on Experience Communication Protocols CAN, I2C, SPI, RS232
-
Experience with static analyser, JTAG tools etc…
-
Knowledge in Assembly and compilers
-
Strong testing & debugging skills, experience with logic analysers
-
Language: C, C++
Nice to have:
-
Knowledge of HW design for ECUs
-
Experience with UDS, AutoSAR, ISO26262, MISRA Guidelines
-
Previous experience with SIL and HIL Testing as well as Test case generation for the same.
-
Hand on experience in using CAN tools & CAPL Scripts, Bus Master
-
Real Time operating Systems, Python, Matlab/Simulink
You bring to Ather:
-
BE/B.tech/B.Sc is minimum req with minimum 2-6 years of prior industry experience.

About Ather Energy
About
Connect with the team
Similar jobs (10)

Position: Application Software Development MBD Engineer – Motor Control Unit
Location: Bangalore
Employment Type: Contract
Experience: 4–6 Years
Industry Preference: Automotive
Reporting To: Manager – MCU Software Development
Educational Qualification: B.Tech / M.Tech in Electrical Engineering or related discipline
About the Role
We are looking for a skilled and motivated Application Software Development MBD Engineer with strong expertise in Motor Control Unit (MCU) software development and Model-Based Design (MBD). The candidate will be responsible for developing, simulating, and implementing motor control algorithms for automotive applications using MATLAB/Simulink-based development methodologies.
Key Responsibilities
- Develop application software using MATLAB Model-Based Development tools including MATLAB, Simulink, Stateflow, and Embedded Coder
- Design, develop, and validate motor control algorithms for: Induction Motors, Permanent Magnet Motors (SPM/IPM)
- Implement motor control techniques including: Field Oriented Control (FOC), Sensorless Control Strategies, V/f Control Schemes
- Implement and optimize PWM techniques such as SPWM and SVPWM
- Develop and integrate application software for Micro Control Units using: Infineon TriCore processors, Texas Instruments DSPs
- Work with development environments and tools including Eclipse-based tools, TASKING, and Code Composer Studio
- Support software debugging, simulation, testing, and validation activities for automotive embedded systems
Required Skills
- Strong experience in MATLAB, Simulink, Stateflow, and Embedded Coder / Code Generation tools
- Experience in motor control and automotive embedded systems
- Good understanding of electric motor control systems and power electronics
- Experience with embedded C programming and real-time systems
- Hands-on experience with development tools such as Eclipse-based tools, TASKING, and Code Composer Studio
- Good debugging and problem-solving skills
- Understanding of automotive software development processes is an added advantage.
Job Objective:
We are seeking an experienced Developer with a strong background in C++, CUDA programming,
and Linux to guide our development team in building cutting-edge solutions for device
integration and high-performance computing tasks. This is a hands-on leadership position that
combines technical expertise with team management skills to deliver high-quality software
products.
Primary responsibilities:
Software Development:
• Develop and maintain high-performance applications using C++ and CUDA.
• Design and implement parallel algorithms for GPUs to accelerate computational
workloads.
Performance Optimization:
• Optimize CUDA kernels for performance, scalability, and memory efficiency.
• Analyze performance bottlenecks and propose innovative solutions.
Code Review and Testing:
• Conduct code reviews to ensure adherence to coding standards and best practices.
• Develop and execute test cases to validate functionality and performance.
Collaboration:
• Work closely with the software engineering and research teams to understand
requirements and deliver robust solutions.
• Provide technical guidance and mentoring to junior team members when necessary.
Documentation:
• Write and maintain technical documentation, including design specifications and user
manuals.
Required Skills:
• C++: Strong proficiency in modern C++ (C++11/14/17/20).
• CUDA Programming: Extensive experience in developing, debugging, and optimizing
CUDA applications.
• GPU Optimization: Familiarity with memory hierarchy, shared memory, streams, and
warp-level operations in CUDA.
• Parallel Computing: Solid understanding of parallel algorithms and multi-threaded
programming.
• Mathematical and Analytical Skills: Strong foundation in linear algebra, calculus, and
numerical methods.
• Tools: Experience with debugging/profiling tools like Nsight, CUDA Memcheck, or
The Senior Software Engineer works with an experienced cross-functional team to deliver innovative wireless communication security products. They will utilize real world knowledge and a disciplined approach to product development, and adapt readily - Time-To-Market demands, ensuring product quality and timely delivery in a highly dynamic market environment.
ESSENTIAL FUNCTIONS :
- Design and deliver server platform based software products from conceptual stages to production delivery.
- Work independently on all phases of server centric software development including specification, architecture design, rapid prototyping, efficient coding, integration, debug and unit testing. Support UL and EN regulatory compliance
- Work collaboratively and effectively as part of a small team on fast paced projects that have tight deadlines.
- Support manufacturing life cycle for new products from NPI to production run and incremental software release of functionality.
- Lead, train, and mentor junior engineers
- Document and present design requirements to staff
- Possess a demonstrated ability to communicate with customers via email and phone
REQUIRED SPECIFIC JOB KNOWLEDGE, SKILL AND ABILITY :
The individual must possess the following knowledge, skills and abilities and be able to explain and demonstrate that he or she can perform the essential functions of the job, with or without reasonable accommodation, using some combination of skills and abilities.
- Must be an excellent SW developer. We expect experience developing software C/C++ in Linux and Perl. Other scripting languages is a plus (i.e. Python).
- Strong experience with SQL, Database design (MySQL a plus)
- Experience with Network Security Administration and understanding of the full SDLC.
- Experience with Multithread, Socket connection, OpenVPN server setup, OpenSSL, Certificate, Encryption, and TCP/IP troubleshooting.
- Experience with Testing tools, virtualizing servers, and using source control (SVN a plus).
- Experience with Linux development infrastructure, tool chain and build environment (Jenkins a plus).
- Experience developing both Linux application software; installing Linux software and configuring Linux systems.
- Experience with Application server remote update, and Apache Server authentication.
- Proven record of designing and delivering complex networking products from inception to production delivery.
- Previous experience developing quality software for commercial products.
- Experience with communication systems involving wireless, radio, security and mesh networking technologies is a plus.
Experience with OSI networking protocols and applications is a plus.
- Experience with system development tools, including Source-Level Debuggers, Protocol Analyzers (Wireshark), Code Analysis tools, etc.
- Experience with any of the following is nice to have: Apache Server, GPIO, TCL/Tk, BACnet, Cloud server setup, and WebGUI design (javascript and jQuery a plus).
Skill Required
Technical
-
● The suitable candidate shall have most of the following knowledge /skills/experience:
-
● Clear fundamentals of Analog and Digital Electronics. Knowledge of Full Hardware
-
Design Life Cycle.
-
● Knowledge of Circuit Simulation (PSPICE, NI Multisim, etc).
-
● Hand- On experience with HW designing rules, PCB Layout in Cadsoft Eagle/Altium Designer etc.
-
● Should have knowledge & experience with designing & developing 8/16 bit Microcontroller based close loop control systems and Arduino Platform.
-
● Circuit building and Circuit Analysis Skills.
-
● Component Data Sheet analysis skills.
-
● Project Requirement Analysis Protocols/Ethernet, Wi-Fi, USB, Serial interfaces(SPI, I2C, RS485, RS422, RS232).
-
● Hands-on experience in utilizing test equipment like DMM, Oscilloscopes, Logic Analyzers, Function/Signal generator/Solder Station (SMD/DIP).
-
● Knowledge about Board Bring Up process.
-
● Testing (Integration testing, protocol/Driver testing, etc.).
-
● Experience in Embedded C programming and embedded system integration and can develop test cases for the same.
-
● Knowledge of IoT Open Source Programming / Development.
-
● Candidate will be responsible for research & development of M2M/IoT products.
-
● Candidate will be responsible for end-to-end embedded system integration.
-
Others
Abilities on the following shall be of added advantage:
-
● Component Procurement
-
● Vendor Interaction
-
● Tools Management
-
● Costing and resource estimation
-
● Team management, Good Communication Skills, Pleasant Personality, Positive Attitude & Highly Creative
-
-
Decision level
Contributory: Makes major contribution to decision or policy judgment on Technical matters of IoT/ M2M Projects, Vending MachinesDemonstrate (Key competencies)
Healthy knowledge of most of the following:
-
● Embedded C
-
● 8/16 bit Microcontrollers
-
● Atmel Studio/ Arduino IDE
-
● Schematic / PCB layout design in Cadsoft Eagle / Altium Designer (SMD/DIP)
-
● Hands-on experience on Test equipment and solder stations (SMD/DIP)
-
● M2M / IoT based development
- 32-bit Microcontroller knowledge is essential (ARM Cortex based micro-controllers (STM32).
- Esp32 architecture knowledge is essential.
- Strong experience in C, C++, Free-RTOS
- Strong experience in CUBEMX IDE, MDK Version 5 – Keil, Arduino IDE environment
- Good knowledge in HW and communication protocols like CAN, SPI, UART, I2C, USB
- Good knowledge in TFT Displays and Sensors is added advantage
- Good knowledge of implementation of motor controls as required, pulse width modulation schemes (PWM).
- Good knowledge of power electronics (TRIACs, MOSFETs, IGBTs, gate drivers) and require protections (Over/under voltage/current).
- Document firmware designs, specifications, test plans, revisions and produce test reports
- Design and development of automotive feature/function software/
components (ACC, AEB, TSR, LKA etc.) for ADAS/AD systems - Coordination and regular interaction with different stakeholders and teams like testing, requirements, leads etc.
- Participate in SW requirement generation, SW architecture, detailed design etc
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
ORGANIZATION
Launched in 2014, Oxit has continually focused on true innovation in IoT services through the creation
of solutions and products for an adaptive global business marketplace. Our diverse list of clienteles,
ranging across a multitude of industries, has grown to recognize and trust Oxit in partnering in all
aspects of Smart Technology capabilities from designing to prototyping, development and carefully
launching their ideas
ROLE
Proficient in connected objects, an IoT embedded engineer develops innovative solutions that help
users to receive, control and manage information.
Conceptualizing, designing, developing, & managing IoT end devices, middleware, interfaces, and
connectivity
RESPONSIBILITIES
PRIMARY RESPONSIBILITIES
● Analyze, discuss and understand user/business requirements
● Translate business requirements to optimizer solutions, system & firmware specifications
● Design & Implement firmware/software as per specifications and conduct unit tests
● Managing & building end devices and middleware (Gateway development)
● Connectivity solutions, protocol implementation, stack development (ex: Lora)
● Perform integration, acceptance tests, troubleshooting, and debugging
● Work in collaboration with other team members, leadership, and other departments towards
solution implementation and delivery
● Adhere to organization/project process standards and guidelines
● Handling internal (team, departments, and leadership) and external (customers & partners)
interactions
● Collaborate with and support Hardware team towards HW design & development
● Collaborate with and support Software team towards backend development, API definition &
interfacing, Mobile, Cloud, & Web application definition
SECONDARY RESPONSIBILITIES
● Researching, creating, and testing IoT solutions
● Designing platform solutions that are cloud-compatible and work with IoT applications
● Providing solutions to issues related to the connection of networks and platforms
● Contribute to improving quality, accelerating development and deployment - process improvement
and tools improvement
● Showcase ability to play different Agile roles and manage small teams
● Supporting management with client interactions and at times leading it
SKILLS
PRIMARY SKILLS
● Hands-on programming experience in C/C++/Python in Embedded/IoT environment
● Good working knowledge of Linux internals & application development
● Good working experience of RTOS & bare metal programming
● Hands-on experience in device driver development
● Hands-on experience with protocol implementation (wired & wireless)
● Experience in executing projects in an Agile/Waterfall model
● Exposure to Gateways, web/cloud computing technologies, APIs, sockets, & related tools
● Exposure to JavaScript, Node.js, and typescript is an added advantage
● Proficient in C, C++, and Python programming, Java script added advantage
● Good understanding of Linux internals, Linux System programming, and application development
on Linux
● Hands-on experience with Container technologies (LXD, Docker and/or Kubernetes)
● Working knowledge and experience implementing FUOTA, Device management
● Working knowledge of Security - Encryption, Decryption, Flash management
● Working knowledge of Web architecture, Interfacing (APIs, MQTT, etc.)
● Hands on experience with Yocto, Ubuntu Core
● Experience with R Pi or similar platforms
● Working Knowledge and experience with LoRaWan on both Gateway and Devices
● Prior experience working on IoT Gateways
SECONDARY SKILLS
● Firm understanding of IoT architecture and principles
● Knowledge of device and data security
● AWS or related cloud architecture, tools & setup, API development
● LoRa stack experience, Network gateway functionality, networking: TCP/IP, DNS, DHCP, HTTP
● ESP32 architecture, Free-RTOS experience
● Work and collaborate well with others
● Strong communication skills
● Strong analytical and problem-solving skills
WORK ENVIRONMENT
● Minimum 3 years of prior experience
with embedded, firmware, & IoT
● Available full time (40 hours a week)
● Remote working infrastructures
● Flexible remote work (work from
anywhere)
● Certain overlap with EST business hours
● Full time (Mon-Fri, 8 hrs/day)
● Agile way of working & mindset
● Team work, frequent interaction &
collaboration with team & leadership
● Collaborations & meetings through
video conferencing
● Friendly & collaborative environment
1. Good Knowledge in Hardware Development (Various Sensors, PCB Designing, Various Micro-controller boards)
2. Firmware designing (writing code on various micro-controller platforms using various hardware communication protocols (USART, SPI, I2C, CAN, etc). Great command in Embedded C Programming and Python.
3. Should have worked with various wired and wireless devices for communication ( Like GSM, GPS, GPRS, Wifi, BLE, Xbee, etc)
4. Should have practical experience in basic networking with devices.
5. Should have worked on various Hardware platforms like Arduino, Raspberry Pi, Web Frameworks, etc.
6. Should have worked with various methods of communicating sensors data on various clouds using API's using multiple protocols like HTTP, TCP-IP and MQTT, etc.
Experience Required : Minimum 4 Years
Expected Salary : 4 - 5.5 CTC








