
Responsibilities:
- Design and implement embedded software applications for IoT devices using C programming language.
- Develop and maintain firmware for Raspberry Pi-based systems, ensuring optimal performance and compatibility with various IoT sensors and peripherals.
- Collaborate with hardware engineers to define and document system requirements and specifications.
- Conduct thorough testing and debugging of embedded software to identify and resolve any issues or bugs.
- Optimize code and improve system performance to enhance the overall user experience.
- Stay updated with the latest industry trends and technologies in embedded systems and IoT development.
- Work closely with the product management team to translate customer requirements into technical specifications.
- Provide technical support and guidance to the team during the development and deployment phases.
- Participate in code reviews and contribute to the continuous improvement of software development processes.
Qualifications:
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
- Strong proficiency in C programming language with a solid understanding of embedded systems.
- Experience developing software for Raspberry Pi or similar single-board computers.
- Knowledge of IoT protocols and technologies such as MQTT, CoAP, TCP/IP, and wireless communication (Wi-Fi, Bluetooth, etc.).
- Familiarity with various sensors, actuators, and electronic components commonly used in IoT devices.
- Solid understanding of software development methodologies and version control systems (e.g., Git).
- Strong problem-solving skills and the ability to debug complex issues in embedded systems.
- Excellent communication and teamwork skills to collaborate effectively with cross-functional teams.
- Prior experience in developing IoT applications or working on IoT projects is a plus.

Similar jobs
Job Title: C++ Buffer Developer
Location: Pune, India
Experience: 2-3 years
Salary: 8 LPA
Notice Period: 0-15 days
Job Description:
We are seeking a skilled and passionate C++ Buffer Developer to join our team in Pune. As a C++ Buffer Developer, you will be responsible for designing, developing, and maintaining high-performance buffer systems for our software applications. You will collaborate with cross-functional teams to analyze requirements, implement solutions, and ensure the overall quality of the software.
Responsibilities:
- Design, develop, and maintain C++ buffer systems to meet the requirements of our software applications.
- Collaborate with cross-functional teams, including software engineers, designers, and product managers, to understand project requirements and deliver high-quality solutions.
- Write clean, efficient, and maintainable code following best practices and coding standards.
- Conduct thorough testing and debugging to ensure the stability and performance of the buffer systems.
- Optimize and enhance existing code to improve overall system efficiency and performance.
- Participate in code reviews to provide and receive constructive feedback for continuous improvement.
- Stay up-to-date with the latest industry trends and technologies related to C++ programming and buffer systems.
- Document the design, implementation, and maintenance of the buffer systems for future reference.
Requirements:
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 2-3 years of hands-on experience in C++ programming, specifically in designing and developing buffer systems.
- Strong knowledge of data structures, algorithms, and object-oriented programming principles.
- Proficiency in using C++11 or higher versions.
- Experience with memory management techniques and performance optimization.
- Familiarity with Linux/Unix environments and development tools.
- Good understanding of software development lifecycle and agile methodologies.
- Excellent problem-solving and analytical skills.
- Strong communication and collaboration abilities.
- Ability to work independently and handle multiple tasks simultaneously.
- Knowledge of network protocols and socket programming is a plus.
- Experience with version control systems (e.g., Git) is preferred.
If you are a talented C++ developer with a passion for buffer systems and want to contribute to the success of our software applications, we would love to hear from you. Apply now and join our dynamic team in Pune!
Note: The salary mentioned is as per the budget and may be subject to negotiation based on the candidate's skills and experience.
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
We are searching for a talented embedded developer to join our team. You will be working along-side with other engineers and developers working on different layers of the infrastructure. Therefore, commitment to collaborative problem solving, sophisticated design, and creating quality products is essential.
The candidate should be proficient in C and C++ and possess detailed knowledge of microcontroller protocols. The candidate would be responsible for,
-
Design and implement software of embedded devices and systems from requirements to production and commercial deployment.
-
Design, develop, code, test and debug system software
-
Review code and design
-
Analyze and enhance efficiency, stability and scalability of system resources
-
Integrate and validate new product designs
-
Support software QA and optimize I/O performance
Mandatory Skills:
-
Experience in C++ based applications development for embedded system applications
-
Solid understanding of OOPs, SOLID Principles, Design Patterns.
-
Drivers/BSP development on peripherals like ADC, SPI, I2C, UART etc
-
Firmware development experience on ARM Series of microcontrollers
-
Strong knowledge of hardware architecture such as ARM, MIPS, and x86.
-
Familiarity with hardware protocols including USB, UART, I2C, and SPI.
-
Familiarity with OS platforms such as Linux, Unix, and RTOS.
-
Knowledge on different communication protocol like Wi-Fi, Zigbee, Bluetooth and sub–GHz.
-
Basic Hardware knowledge and debugging skills
-
Strong analytical and problem-solving abilities.
-
Strong organizational and project management skills.
-
Strong knowledge of SDLC, test cycle and logical thinking on various complex use case call scenarios.
-
The ability to keep abreast with the latest advancements in technology and techniques.
Desired Skills:
-
Knowledge on IoT based systems
-
Preferably worked on a Linux based project.
-
Ability to lead the team & handle the project and own all technical aspects of design and development of systems from scratch.
-
Meticulous and very organized.
-
You will not hesitate to ask questions and call upon the knowledge of your coworkers to make sure you produce the best possible documentation for our customers.
-
Worked on 3-5 project from starting of project to delivery of project (Depending on experience)
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
-
Design and implement software of embedded devices and systems from requirements to production and commercial deployment.
-
Design, develop, code, test and debug system software Review code.
-
Support software QA and optimize I/O performance.
-
Interface with hardware design and development Assess third party and open source software.
-
hands-on development and troubleshooting on embedded targets Solid programming experience in C or C++.
-
Experience in programming Embedded C/C++ applications with strong background in C/C++ inheritance, templates and pointers.
-
Strong in OS concepts like efficient multi-threading and resource-sharing.
-
Experience in working with firmware, application and board support packages.
-
Expert knowledge on protocols like (RS485 SPI, I2C, ADCs, PWM, CAN).
-
Embedded development tools and methodologies. • Version Control Systems - Clear Case / RTC /GIT.
-
Strong development experience in embedded C and RTOS. • Should have detailed knowledge and experience on microcontrollers / microprocessors ( 16 bit/32-bit).
-
Experience in configuration management & defect tracking tools.
-
Strong debugging skills.
-
Must be a self-starter.
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
Job Description
Embedded Software/Firmware Design and Development on OS/Non-OS based platform
Necessary system architecture development and implementation
Device, sensor and gateway selection and integration based on industry use case.
Development on Image Analytics and Cloud/Platform integration
Development or integration of Cloud/Platform communication protocol
Technical Documentation and Testing of the developed system
Desired Skills, Knowledge& Experience
B. Tech/M. Tech/MCA with 8-10 years of industry experience
Strong programming skills in C/C++ and Python development in Linux
Experience in device or sensor communication interfaces (wired/wireless, short range/long range).
Experience of microcontroller and microprocessor.
Knowledge of IoT gateway firmware development, container, and OS hardening.
Experience in device communication protocol, Edge computing and processing
Competent in application development for Image processing, transmission, and storage
Good understanding and of programming primitives, data structures, multi-threading and memory management techniques
Strong command over complex sensor and hardware control logic to work seamlessly with edge devices or gateway
Proactive and Self motivated
Strong verbal and written communication skill
- Looking engineers with 3 - 4 years of experienced embedded software and embedded Linux developers
- Design and implement Embedded Linux based applications
- Design and implement embedded software for telematics and IoT products
- Code review and optimization
- Develop board support packages for new hardware designs
- Provide customization and field support
- Closely work with the hardware development team
Requirements:
- BE/BTech in ECE, EEE or CS
- 3 - 4 years of experience in embedded software and embedded Linux development
- Good working experience in Linux applications and drive development
- Good C programming skills
- Good knowledge of OS programming
- Familiarity with configuration management tools
- Good communication skills

