
C/C++ Developer
We’re doing things no one has ever done. From developing game-changing technology and solutions to
helping the world’s top brands connect like never before, every day brings new challenges and opportunities
to innovate. We offer the chance to make your mark on something awesome.
What are we looking for?
Strong C/C++ programming and debugging skills in a Linux environment.
Experience with Design Patterns, ACE Framework, and Socket Programming.
Experience in Multi-threaded software development for Multicore Architectures.
Experience in VOIP application development, preferably on client/server platforms.
Understanding of system performance and scaling
Experience in embedded software development
Excellent problem solving/debugging skills design, develop, troubleshoot and debug
Software programs for databases, applications, tools, networks etc.
Requirements:
Bachelor's degree in Computer Science or related field or equivalent experience.
3-6 years of software engineering or related experience.
Location: Bangalore/Hybrid Model

Similar jobs
Position: Senior Embedded Software Engineer – PCIe / Embedded Linux
Location: Bangalore (Preferred)
Experience: 7+ years
Night Shift
About the Role:
We are seeking a highly skilled Senior Embedded Engineer with strong expertise in Embedded Linux and PCIe protocol development. The ideal candidate will have deep technical knowledge of PCIe (Gen4 and above) and experience in developing and debugging embedded systems at both hardware and software levels. Exposure to AI/ML or accelerator-based systems will be considered a strong plus.
Key Responsibilities:
- Design, develop, and optimize embedded software on Linux and RTOS platforms.
- Implement and validate PCIe-based communication and device drivers (Gen4 minimum, Gen5/6 preferred).
- Work closely with hardware and system teams to debug low-level issues related to PCIe interfaces.
- Develop firmware and system-level software components for high-performance embedded platforms.
- Participate in board bring-up, performance optimization, and hardware/software integration.
- Contribute to system architecture discussions and design reviews.
- Document design, testing procedures, and performance analysis.
Core Skills Required:
- Embedded Linux development (mandatory).
- Deep understanding of PCIe protocols (Gen4 minimum; Gen5/6 preferred).
- Strong knowledge of low-level driver development, DMA, interrupts, and memory management.
- Experience with Embedded RTOS environments.
- Familiarity with hardware debugging tools (e.g., JTAG, logic analyzers, oscilloscopes).
- Proficiency in C/C++ and scripting (Python, Shell).
- Excellent problem-solving and debugging skills.
Preferred Skills (Good to Have):
- Exposure to AI/ML hardware accelerators or data processing units (DPUs).
- Understanding of SoC architecture and high-speed interconnects.
- Experience working with multi-core systems and performance tuning.
Education:
- Bachelor’s or Master’s degree in Computer Engineering, Electronics, or related field.
Job Summary
We are seeking a highly skilled and motivated Linux Device Driver Engineer with strong C/C++ programming skills and hands-on experience in Linux driver development. The ideal candidate will have a proven track record of working with kernel modules and hardware interfaces, and be comfortable debugging and optimizing low-level system software.
Key Responsibilities
- Porting existing Linux device drivers to new platforms, SoCs, and kernel versions.
- New driver development for custom hardware components and peripherals.
- Debugging kernel and driver-level issues using industry-standard tools.
- Integration & bring-up of hardware with Linux-based systems.
- Collaborate with hardware teams to interpret specifications and enable device functionality.
- Optimize drivers for performance, reliability, and resource efficiency.
- Write clear technical documentation for driver APIs, design, and integration steps.
Required Skills & Qualifications
- Bachelor’s/Master’s in Computer Science, Electronics, or related field.
- 4 to 8 years of professional experience in software development.
- Strong proficiency in C/C++ programming and memory management.
- Hands-on experience with any Linux device driver (character, block, network, USB, PCIe, I2C, SPI, etc.).
- Good understanding of Linux kernel architecture, module programming, and build systems.
- Knowledge of interrupt handling, DMA, and device tree configuration.
- Familiarity with cross-compilation and embedded Linux toolchains.
- Experience with debugging tools (GDB, ftrace, perf, printk, etc.).
- Version control experience (Git).
Preferred Skills
- Exposure to multiple driver types (networking, storage, multimedia, etc.).
- Experience with Yocto, Buildroot, or similar embedded Linux environments.
- Knowledge of real-time Linux and RT patches.
- Scripting knowledge (Python, Bash) for testing and automation.
Soft Skills
- Strong analytical and debugging skills.
- Good communication and collaboration abilities.
- Ability to work independently and take ownership of deliverables.
Technical Lead (Embedded Software - Linux)
Job Responsibilities:
Lead a team of software/Linux development engineers working on microcontroller firmware development, Linux platform drivers and IOT solutions. Should be able to guide team members, resolve technical roadblocks and deliver project commitments. Will be the go-to person and first-level escalation point for all technical issues faced by the team. Looking for someone with 6+ years in the embedded industry and a passion to build a core team in a growing company. Team size will vary from 6 to 12 people, mainly firmware and Linux engineers.
The selected candidate for this role will be reporting to the software director/manager in the organization.
- Work with firmware and application architects to create a project execution plan
- Review project proposals for execution scope & timelines
- Lead embedded software development activities by the team
- Work with QA teams to resolve bugs and ensure release readiness
- Work with h/w design and PM teams to ensure smooth execution and timely delivery of projects
The main responsibilities of this role are:
Technical:
- Strong programming skills (C, C++, assembly)
- Linux development experience (porting & platform drivers)
- Expert-level knowledge of embedded microcontroller & microprocessor-based systems
- Prior experience in delivering critical modules for microcontroller projects
- Good understanding of commonly used embedded communication protocols
- Good understanding of common embedded peripherals, interfaces & sensors
- Experience working on Real-Time systems (RTOS)
- Should be able to quickly learn new technologies and enable the team on the same
- Should be able to work with minimal technical guidance
Leadership:
- This role requires excellent communication skills
- Strong analytical & problem-solving skills
- Should be able to lead junior engineers by providing technical mentoring
- Owns task division, task allocation and tracking within the team
- Require multi-tasking and time management skills
- Prior experience working with overseas clients
- Periodically report progress to management
Other desirable skills:
Knowledge of Python
Experience: 6 to 10 years
Skills You'll Need
- At least 3 years of C++ programming experience in a Linux environment.
- Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
- Experience in Object-Oriented design and multi threaded programming
- Experience in creating/supporting cross-platform multi threaded applications
- Strong analytical and problem solving skills
- Ideally some experience in developing low latency systems
- Experience with trading or execution systems preferred
- Bachelor's degree in Computer Science or Computer Engineering or related field
- Reliable and predictable availability
Ideally in Mumbai Metro Area but open to anywhere for the right candidate.
- Become a member of the team responsible for IoT hub software development. IoT hub provides IoT functionality (smart home, smart appliance,…) to mobile and web clients and runs on Linux-based host like smart home hub, broadband router, STB, etc.
- Implementation and/or extension of leading wireless/wired protocols (ZigBee, Bluetooth, IP-based,..) for communication with smart devices
- Development of new features for control and monitoring of smart devices and automation of IoT system
- IoT hub software porting on various hosts
- Software optimizations
Position: C++ Developer
Location: Hyderabad
Requirements:
- Strong C++ skills obtained in multiple years of C++ programming experience (at least 3 years)
- Good understanding of embedded system development based on Linux OS
- Knowledge of advanced programming concepts (e.g. Multi-Threading, OS internals, Networking, IPC mechanisms)
- Solid understanding of computer networking (TCP/UDP/MQTT/SSL)
- Solid understanding of Git source code management system
- Troubleshooting skills
- B.Tech/M.Tech/MCA in computer science/ECE/EEE
- Fluent English
Solinas Integrity (www.solinas.in) is a leading water & sanitation robotics start-up founded by IIT Madras Alumni & professors to develop cutting edge solutions to solve the problems in water pipelines and sewer lines\septic tanks, thereby improving the lives of millions of people. Our core values start with trust, and respect for everyone and along with strong collaboration and communication. We believe in giving agency to our teammates and strongly pushing them towards developing a growth mindset.
Duties and Responsibilities:
- To develop and improve signal processing algorithms for analysis of acoustic signals with up-to-date knowledge on processing methods.
- Understand key acoustic algorithm functions, develop efficient code, verify performance and functionality.
- Exposure to all phases of software development life cycle (concept, design, implementation, test, and production).
- Propose innovations to improve performance, quality, etc.
- Work with peers to develop excellent, structured code, well-optimized and easily maintainable.
Basic Qualifications:
● Experience programming in either Python, C++, or MATLAB
● MS/PhD degree in Electrical/Electronics Engineering/ Signal processing
● At least 1 year of signal processing or related area
● Good analytical and problem-solving skills
● Good knowledge of signal processing techniques, basic knowledge of ML algorithms and good visualisation skills.
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.








