
C++ Developer / Test Engineer (GoogleTest / G-Test)
C++ Developer / Test Engineer (GoogleTest / G-Test)
About the Role
We are seeking a highly skilled C++ Developer / Test Engineer with strong expertise in unit testing, debugging, and software quality engineering. The ideal candidate will have hands-on experience developing and executing automated test cases using GoogleTest (G-Test) and validating enterprise-grade C++ applications.
This role requires strong implementation capability, debugging maturity, and a deep understanding of software testing methodologies to improve application stability, code quality, and production readiness.
Key Responsibilities
- Design, develop, and execute unit test cases using GoogleTest (G-Test).
- Improve code coverage and ensure application reliability.
- Perform debugging, root cause analysis, and issue resolution.
- Validate server-side customizations and application behavior.
- Analyze logs and troubleshoot production and development issues.
- Collaborate with development teams to resolve defects and improve software quality.
- Support CI/CD pipelines and automation initiatives.
- Contribute to software quality, maintainability, and testing best practices.
Required Qualifications
- 3–6 years of experience in C++ development and/or testing.
- Strong hands-on experience with GoogleTest (G-Test) or similar unit testing frameworks.
- Excellent understanding of Object-Oriented Programming (OOP).
- Strong knowledge of STL, pointers, memory management, and data structures.
- Experience in debugging, log analysis, and root cause investigation.
- Familiarity with Git, Jenkins, and CI/CD workflows.
- Ability to work independently on real-world implementation and testing challenges.
- Comfortable working in a hybrid setup from Pune.
Preferred Qualifications
- Experience with Teamcenter customization or PLM applications.
- Exposure to enterprise software development environments.
- Knowledge of software quality assurance and automation practices.
What We're Looking For
- Strong practical implementation skills.
- Ownership of testing and debugging activities.
- Experience working on production-grade applications.
- Ability to analyze complex issues and drive resolutions.
- Focus on software quality, reliability, and maintainability.
Evaluation Criteria
Candidates will be assessed on:
- Practical C++ implementation capability.
- GoogleTest framework expertise.
- Debugging and problem-solving skills.
- Understanding of OOP, STL, and memory management.
- Real project ownership and execution depth.
- Code quality and testing best practices.

About ideas to impacts innovation pvt ltd
About
Established in 2015, Ideas to Impacts (i2i) is a purpose-driven cutting edge global technology solutions provider, headquarter in Pune, India. i2i offers specialized technology solutions in the fields of Software Product Engineering, Digital Transformation, Cloud, IoT, Cybersecurity, SAP, Artificial Intelligence/ Machine Learning, Data Annotation, Robotic Process Automation (RPA), and other emerging technologies, across industry segments. Also, recognizing the need for a hybrid work environment in the post-pandemic world, i2i has introduced an innovative operating model as an offering, Work From Home-town (WFHT®). WFHT® aims to equip global tech providers with the ability to operate from home-town (non-metros and small towns) offices. At i2i, we deliver solutions to our global and domestic customers, through our pioneering ‘Smart Town Model (STM)’, designed to ensure, teams across i2i are equipped to deliver best-in-class service quality to our customers. In the Smart Town Model (STM), customer management, architecture, design and mentoring related functions are handled by senior associates, based out of metro cities, while engineering, development, and support related activities are performed by Talent teams based out of Tier 2 and Tier 3 towns. This helps i2i deliver enhanced value to its customer, while significantly improving the quality of life of our talent and materially transforming communities. The model focuses on a three-pronged approach, to create value for the Customers, Talent, and Community.
Similar jobs
Responsibilities:
IoT Deployment (on-field) and maintenance
Lead assembly, testing, and finalization of IoT products
Black Box Testing: BLE, WiFi
Integration testing: (IoT, backend, and Android)
Test report and deployment setup documentation
Apply quality engineering principles throughout the Agile product lifecycle.
Collaborate closely with cross-functional teams.
Required qualifications:
2021/2022 passed out B.Tech Graduate in ECE or EEE
Hands-on experience with microcontrollers like Arduino and ESP.
Knowledge of C programming language.
Excellent communication and critical thinking skills.
Good organizational skills and a detail-oriented mindset.
Ability to work in a fast-paced environment with minimal supervision.
Sense of ownership and pride in your performance and its impact on the company’s success.
Team player.
Good time management skills.
Preferred qualifications:
Good understanding of embedded and IoT systems.
Who can apply
Only those candidates should apply who
are available for full-time (in-office)
can start the Job immediately
are from Mumbai
have relevant skills and interests
Primary skills:
At least 3+ years of working experience on embedded firmware development
- Experience in multithreaded programming, network programming (wired and wireless protocols), real-time programming, cross-platform and cross-language development
- Hands-on experience on driver development for various sensors
- Working knowledge of communication protocols like UART, I2C, SPI, USB, Ethernet, etc
- Product development experience with range of microcontroller/microprocessor architectures, adoption of bare-metal, RTOS and Linux operating systems on new platforms
-Hands-on experience on software development in Bluetooth domain is added advantage
- Experience with hardware lab equipment such as digital scope, logic analyser and JTAG
- Understanding of embedded development constraints and system performance
- Experience with programming in C/C++ and Embedded C
- Working Experience in
· C and/or C++ programming
o Should have Project working experience in C or C++
o Should have done feature enhancement and/or Bug fixing using C/C++.
· System Programming knowledge in
o Muti-threaded programming, Process contexts/forks/execs and system calls
o IPCs (like Socket programming, Message Queues, semaphores)
o Linux Operating system
o File access calls, like file descriptor handled operations.
· Enterprise Security domain and SaaS
o IPSec, SSL VPN tunnelling
Bachelors/Masters Degree in Engineering
Position : BSP Engineer
Total experience : 4+ yrs to 10 yrs
Desired Skills And Experience
4+ years of experience in application development, drivers development.
At least 4 years of working experience in the design and development of u-boot and Linux kernel subsystems and drivers.
Excellent programming skills in C/C++ and Hands-on experience in ARM-based SoC.
Experience in BSP and Boot loaders
Linux Device drivers Development and knowledge of RTOS.
Device drivers experience preferably for following devices: UART, I2C, I2S, SPI, GPIO, PCIe, MMC, USB etc.,
Hands-on experience on WIFI and SDIO has added advantage.
Strong debugging skills.
Location:Bangalore / Chennai
Type: Permanent
Company Type: AI / Digital Product Design Service based
Job Description
* Experience in C/C++ and have strong experience embedded application development and integration in Linux
* Good in creating unit tests, performing code reviews, optimizing performance and ensuring standards for maintainability
* Debugging, profiling, and performance optimization skills
* Have experience working in a fast paced Agile/Scrum environment
Software development for video streaming solutions. The position is for a developer role who will translate functionality building blocks and components into to software code, integrate the functional components in the architectural framework. The position will be responsible for complete software development including requirements analysis, design, implementation, unit test, integration. Expert in C++, C#, Network protocols like TCP/UDP, design patterns and principles. Hands on with network protocols in C#. Understand cloud technology.
Strong debugging skills. Video streaming hands is preferred. Video Management solutions (VMS) hands on is big plus. It requires closely working with SMEs/ domain experts. Responsible for algorithm development, programming, unit testing, implementation, documentation, maintenance and support of systems software’s in adherence with Industry standards, processes and best practices. Develop high quality, secure, scalable software solutions based on technical requirements specifications and design artifacts within expected time and budget. Assist team members in the development of applications, components, system to system interfaces and complete software solutions. Collaborate with cross-functional teams to determine functional and non-functional requirements for new software or applications Collaborate with SMEs, domain experts, quality assurance and end users to produce cutting-edge robust software solutions Develop product specifications with attention to safety criticality, robustness & reliability, extendibility & flexibility Evaluate existing software solutions to identify areas for improvement, modularization Design and documentation of evolving architecture in terms of UML diagrams, architectural diagrams, state-machines, flow-charts etc. Code implementation, debugging and unit testing
Work with project team to meet scheduled due dates, while maintaining the software quality. Assistance in testing activities as per standard V&V practices and Quality Assurance Maintain thorough documentation of software artefacts as per software development guidelines for moderately-complex projects. Actively look for opportunities to enhance standards and improve process efficiency.
Skills
- Minimum 5+ years of proven experience as software engineer.
- Strong in Network protocols, OOPS concepts and data structures.
- Familiarity with application software development as well as embedded software development
- Experience in software development and coding in various languages (C, C++, C#)
- Excellent knowledge of software and application design, architectural styles and design patterns, architecture tradeoff analysis
- Proficient understanding of any one of code versioning tools (Git, SVN, and Mercurial)
- Familiarity with formal change control and support processes (JIRA, BitBucket, Scrum etc.)
- Understanding of V&V approaches and software quality assurance principles
- Experience with service-oriented architecture (SOA), and cloud technologies would be an added advantage
- A technical mindset with great attention to details, innovation
- Good analytical, communication and presentation skills
Key Shared Accountabilities
Customers: Competence to build and effectively manage interpersonal relationships at all levels with different clients and vendors.
Business Team: Work Closely with business team to understand the needs and deliver by maintaining harmonious relationship.
Desired Behavioural Values
- Commitment to common purpose and goals
- Seating respect on the table
- Displaying Integrity and Ethic
- Taking initiative and ownership
- Being passionate about making a difference
- Constant networking with thought leaders, analyst & special interest groups.
- Collaborate with SMEs, domain experts and quality assurance to produce cutting-edge robust software solutions.
- Dreamer, Creative, Passionate & self-motivated & self-starter
- Actively listen to others and demonstrate understanding of other points of view.
- Showcase likeliness to adjust to changing conditions or priorities.
- Take the initiative to identify, work on problems proactively and lead by example.
- Consistently provide ideas, opinions, or information in a professional way.
- Understand IP & trademark policies and actively promote safe practices in projects.
You would be part of:
- Designing/Improvement of new/existing architectures of distributed computing with subcomponents of Unmanned Aerial Systems (UAS).
- Working/Researching with industrial state of the art sensor systems and modules, and developing drivers (HAL or wrapper) and applications around their usage.
- Design and implementation of communication protocols between different subcomponents of UAS for distributed computing.
- Writing Applications and Drivers from the scratch for (embedded)linux based systems.
- Scripting and automations around work flows of UAS usage.
- Working with existing sophisticated software stacks of subcomponents of UASs.
- Working closely with electronics, design and systems teams for architecture development and deployment.
- Working closely with Flight Controller engineers to do collaborative development of UAVs.
We expect you to be:
- Experienced in hands-on development of complex embedded systems involving multiple microcontrollers or SoCs.
- Very good in analytical abilities to be able to do core research and development activities.
- Able to write low level drivers (wrapper or core) from the scratch.
- Very comfortable reading and understanding datasheets and reference manuals of microcontrollers, peripherals, sensors etc.
- Able to understand existing complex embedded software stack written in C/C++.
- Solid in C.
- Good in C++.
- Comfortable with using hardware debuggers.
- Having Hands-On experience with RTOS concepts like scheduling, threads synchronicity , race conditions etc.
- Having Solid understanding of interrupt mechanisms.
- Experienced in working with different hardware protocols like SPI, I2C, UART, PWM, CAN, USB etc.
- Having Solid understanding of interrupts architecture of ARM based microcontrollers like STM32, LPC etc.
- Having Good understanding of the concept of bootloaders.
- Able to multitask.
- A self-motivated and motivating personality who can work well independently as well as part of a team
- Having good interpersonal and soft skills who can adapt to the work environment while manifesting a good positive attitude
You are awesome if you are:
- Experienced in Linux Device Driver development.
- Having good exposure of working on and understanding of any sensor modules like GPS, LIDAR etc.
- Experienced in data filtering techniques (Example: Kalman filter)
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.
We are looking for passionate, talented and super-smart engineers to join our product development team. If you are someone who innovates, loves solving hard problems, and enjoys end-to-end product development, then this job is for you! You will be working with some of the best developers in the industry in a self-organising, agile environment where talent is valued over job title or years of experience.
Responsibilities:
- You will be involved in end-to-end development of VIMANA technology, adhering to our development practices and expected quality standards.
- You will be building machine/controller specific applications that run on machine tools and stream the machine stats.
- You will be part of a highly collaborative Agile team which passionately follows SAFe Agile practices, including pair-programming, PR reviews, TDD, and Continuous Integration/Delivery (CI/CD).
- You will be part of a DevOps culture where you will get to work with production systems, including operations, deployment, and maintenance.
- You will have an opportunity to continuously grow and build your capabilities, learning new technologies, languages, and platforms.
Requirements:
- Undergraduate degree in Computer Science or a related field, or equivalent practical experience.
- 3+ years of product development experience.
- Proficiency in C, C++, Multi-Thread application development, STL, Boost and TCP/IP programming.
- Optionally should have some basic knowledge on C#, Python and Wireshark.
- Deep knowledge in Data Structures and Algorithms, using various debuggers (Local/Remote).
Additional Skills:
- Experience in working with Agile software methodologies (XP, Scrum, Kanban), TDD and Continuous Integration (CI/CD).
- Experience using no-SQL databases like MongoDB or Elasticsearch.
- Prior experience with container orchestrators like Kubernetes is a plus.
We build products and platforms for the Industrial Internet of Things. Our technology is being used around the world in mission-critical applications - from improving the performance of manufacturing plants, to making electric vehicles safer and more efficient, to making industrial equipment smarter.
Please visit https://govimana.com/ to learn more about what we do.
Why Explore a Career at VIMANA
- We recognize that our dedicated team members make us successful and we offer competitive salaries.
- We are a workplace that values work-life balance, provides flexible working hours, and full time remote work options.
- You will be part of a team that is highly motivated to learn and work on cutting edge technologies, tools, and development practices.
- Bon Appetit! Enjoy catered breakfasts, lunches and free snacks!
VIMANA Interview Process
We usually target to complete all the interviews in a week's time and would provide prompt feedback to the candidate. As of now, all the interviews are conducted online due to covid situation.
1.Telephonic screening (30 Min )
A 30 minute telephonic interview to understand and evaluate the candidate's fit with the job role and the company.
Clarify any queries regarding the job/company.
Give an overview about further interview rounds
2. Technical Rounds
This would be deep technical round to evaluate the candidate's technical capability pertaining to the job role.
3. HR Round
Candidate's team and cultural fit will be evaluated during this round
We would proceed with releasing the offer if the candidate clears all the above rounds.
Note: In certain cases, we might schedule additional rounds if needed before releasing the offer.








