
About Civil Maps
About
At Civil Maps, we believe that efficient, safe mobility can revolutionize the way we live and interact with the world around us. To reach this future, we provide autonomous vehicles with cognition, enabling them to crowdsource 3D maps and make better decisions for safe driving. Our first milestones include providing real-time, localization in six dimensions and producing augmented reality maps, to be used by AVs and humans. Our process of questioning established methods and our artificial intelligence expertise allow us to define the mobility solutions of the future.
Civil Maps' resources are augmented through its partnerships with the leading geospatial, governmental and academic institutions including U.S. Department of Energy, National Energy Research Scientific Computing Center, Verizon Innovation Program, University of California Berkeley and Stanford University.
Connect with the team
Similar jobs (10)

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.
Key Responsibilities
1. Kernel Lifecycle & Maintenance
Upstream Alignment: Lead the strategy for upgrading enterprise kernels (e.g., migrating from LTS 5.15 to 6.6) while maintaining binary compatibility where required.
Patch Porting: Expertly port functional and performance patches between disparate kernel versions, resolving complex code conflicts and API changes.
CVE Mitigation: Monitor the Linux Kernel Mailing List (LKML) and security advisories to identify and backport CVE patches from upstream to production environments.
2. Deep-Dive Debugging & Stability
Panic Analysis: Act as the final escalation point for Kernel Panics and "Oops" messages. Utilize kdump, crash, and gdb to perform post-mortem analysis of vmcores.
Boot-Time Resolution: Debug critical failures during the early boot process (UEFI handoff, initramfs, and early kernel init) where standard logging is unavailable.
Performance Tuning: Use ebpf, ftrace, and perf to identify bottlenecks in memory management, scheduler latency, or I/O throughput.
3. Driver Development & Hardware Integration
Driver Ownership: Design, develop, or maintain at least one Open Source or Proprietary Device Driver (Network, Storage, GPU, or Character devices).
Hardware Abstraction: Interface directly with hardware registers, managing DMA mappings, and optimizing interrupt handling (MSI-X, Threaded IRQs).
Out-of-Tree Management: Maintain driver compatibility across kernel updates using DKMS or similar frameworks.
4. Infrastructure & Automation
Registry Management: Oversee the distribution of custom kernel builds and modules via GitLab Container/Package Registries.
CI/CD for Kernel: Build automated testing pipelines (Hardware-in-the-loop) to validate kernel stability before enterprise-wide deployment.
Required Technical Skills:
Languages: Mastery of C/C++ Programming (C is preferred)
Kernel Internals: Deep understanding of VFS, Memory Management (MMU/Paging), Process Scheduling, and Networking Stacks.
Debugging Tools: Expert-level use of kprobes, trace-cmd, valgrind, and hardware-level debuggers (JTAG/Serial Console).
Build Systems: Proficiency with Kbuild, Makefiles, and building RPM/Debian packages for kernel distribution.
Security: Hands-on experience with SELinux/AppArmor policy development and kernel hardening (FIPS, KSPP).
Job Description – Android AOSP Developer
Job Title: (Senior) Software Developer
Location: Remote
Job Summary:
TechGrit India is seeking a highly skilled Android AOSP Developer with 5-8 years of experience to join our team. This is an immediate requirement. The successful candidate will be responsible for designing, developing, and maintaining high-quality software products that meet the needs of our customers. This role will work closely with other members of the development team to ensure that software solutions are delivered on time and within budget.
Key Responsibilities:
- Develop software applications using C++ and other programming languages as needed
- Write clean, efficient, and maintainable code that meets the requirements of our customers
- Design, develop, and maintain software systems, components, and libraries
- Collaborate with other members of the development team to ensure that software solutions are delivered on time and within budget
- Participate in the testing and debugging of software applications, and provide support to the quality assurance team as needed
Requirements
- Bachelor's degree in Computer Science, Engineering, or a related field
- 5+ years of experience in software development using C++ in a Linux/Ubuntu environment
- Experience working with Android AOSP code base.
- Strong understanding of object-oriented programming concepts and design patterns
- Strong analytical and problem-solving skills, with the ability to identify and solve complex technical problems
- Strong communication skills and the ability to collaborate effectively within a team.
- Bachelor's degree in Computer Science, Information Technology, or related field (preferred, but not mandatory).
Developers with these skills will excel in this role:
- C++ in a Linux/Ubuntu environment
- TCP/IP networking and protocols
- Multi-process Multi-threaded environment
- High performance, High Availability server software
- Video H.264 encoder/decoder
- Android, iOS, Linux client-side app development ( C++)
About TechGrit:
TechGrit is a custom software development services company dedicated to accelerating business growth through high-performing Agile teams. We specialize in delivering diversified and unique solutions across various industries, including ConstructionTech, HealthTech, FinTech, and HighTech. Our team of champion developers works closely with clients to design and develop custom software solutions that meet their business needs.
Our Mission:
To deliver high-quality and cost-effective software solutions that help companies and entrepreneurs achieve their goals and stay ahead of the competition.
Our Vision:
To be the most trusted technology partner for our customers, accelerating their business growth through innovation, reliability, and excellence by best-in-class people.
Our Core Values:
- Customer Obsession
- Excellence
- Innovation
- Teamwork
- Integrity
- Empathy
Join TechGrit and be part of a team that values innovation, excellence, and teamwork. We are committed to creating an inclusive environment where all employees feel valued and respected. If you are passionate and want to contribute to our mission and vision, we would love to hear from you.

Candidate shall be responsible for the overall quality of the module that he/she is responsible
Candidate shall be responsible for requirement elicitation and architecture of the module for instrument cluster in a production program
Candidate shall help the PM/architect in estimation
What You Need :
Expertise in C++ for more than 6 years
Experience in Automotive is preferred
Understanding of CAN/LIN protocol
Experience with unit testing tool (GTest/ LDRA etc.)
Experience in design tools like Rhapsody is desirable
About us:
Arista Networks was founded to pioneer and deliver software driven cloud networking solutions for large datacenter storage and computing environments. Arista's award-winning platforms, ranging in Ethernet speeds from 10 to 400 gigabits per second, redefine scalability, agility and resilience. Arista has shipped more than 20 million cloud networking ports worldwide with CloudVision and EOS, an advanced network operating system. Committed to open standards, Arista is a founding member of the 25/50GbE consortium. Arista Networks products are available worldwide directly and through partners.
About this role:
- You will be working with the WiFi team at Arista, developing cutting edge and next generation WiFi solutions in a fast-paced environment. The WiFi team is responsible for the end to end development of the Cloud managed WiFi product portfolio of Arista. This specific position is for the WiFi AccessPoint team.
- As a core member of the AccessPoint team, you will be working closely with relevant teams to understand product requirements, design the solution, build the software and deliver it for final validation and customer deployment.
- You will also keep track of new and emerging technologies and their impact on Arista products, come up with new and innovative ideas to improve and differentiate the product and help Arista become a leading player in the Campus space.
- You will work closely with sales and support teams to push new solutions, understand customer needs and pain points and help resolve escalations.
- You will not be limited to a single aspect of the product, it will be broad encompassing many different aspects including but not limited to developing new Access Points, designing and implementing new features, tracking new technologies and working closely with the sales and customer teams.
Requirements:
• Strong engineering and Computer Science fundamentals
• Expected to have a strong background in software development and good understanding of systems and networking areas with the knowledge of the WiFi area as an added bonus.
• Minimum 4+ years of relevant experience
• Well versed with programming in one of C/C++ languages
• Experience working in a Linux environment, developing applications or Linux drivers
• Proven experience in any of the below:
- Network device drivers, operating system internals, Kernels, compilers, SOC architecture
- Experience in developing Wi-Fi features (802.11), WLAN MAC Protocol, system integration, evaluate various performance parameters.
- User space development for connectivity related products (Wireless Lan access points/ controllers, networking equipment) in one or more of following areas:
• HostAPD, Portal, RADIUS, AAA, Identity and role management, Radsec
• Tunnels, Firewall, Iptables, Flow Classification, QoS, TLS, DTLS Preferred Skills
• Experience with Wi-Fi device drivers on Linux.
• Hands-on experience in working with one or more WIFI chipset platforms
• Good System Level understanding of the Wireless AP functionality
• Experience in developing Wi-Fi features, system integration, evaluate various performance parameters
Resources:
- Arista Cognitive WiFi : https://www.arista.com/en/products/cognitive-wifi https://youtu.be/cT1INdR-xHQ https://www.youtube.com/watch?v=olPkCOT3MdA
- Arista Cognitive WiFi Datasheet: https://www.arista.com/assets/data/pdf/Datasheets/CloudVision-Wifi-Datasheet.pdf
- Arista's Approach to Software with Ken Duda (CTO): https://youtu.be/TU8yNh5JCyw
- Additional information and resources can be found at https://www.arista.com/en/
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
- Develop embedded Linux Applications
- Work with a worldwide team to integrate the product to meet the requirement
Required Qualifications:
- Degree in Computer Science from a top-tier institution
- Relevant full-time work experience of 4+years
- Strong foundation in computer science, Object-Oriented software, unit testing & test automation with scripts
- Ability to self-teach.
Mandatory Technical Skills:
- Expert level programming in C/C++
- Linux systems programming, data structures & algorithms
- Networked applications
Desirable Technical Skills:
- Linux Board Bring up, device drivers would be an advantage









