Principal Software Engineer (C++)

7 - 11 years

12 - 17 Lacs

Posted:1 month ago| Platform: Naukri logo

Apply

Work Mode

Work from Office

Job Type

Full Time

Job Description

  • Architect modular, extensible software frameworks for BCI hardware and companion applications.
  • Define system-level interfaces between hardware, firmware, signal-processing, and APIs.
  • Make critical design trade-offs balancing performance, scalability, and maintainability.
  • Core Development
    • Develop high-performance C++ software (C++14/17/20) with a focus on low-latency, multi-threaded, and memory-efficient applications.
    • Implement hardware drivers, communication protocols, and real-time signal acquisition pipelines.
    • Build abstractions and libraries that expose Nexstem s hardware capabilities to higher-level SDKs and APIs.
    • Be strong in core Computer Science fundamentals and architecture.
  • Hardware-Software Integration
    • Collaborate with hardware engineers on device drivers, data acquisition interfaces, and embedded systems.
    • Optimize performance on embedded processors, FPGAs, Linux-based systems, and edge computing devices.
  • Performance & Reliability
    • Profile and optimize system performance across CPU/GPU/accelerator architectures.
    • Implement reliability, fault-tolerance, and recovery mechanisms for production-grade deployments.
  • Mentorship & Leadership
    • Set coding standards, best practices, and CI/CD workflows for the engineering team.
    • Mentor junior and mid-level engineers in C++, software design, and system thinking.
  • Innovation & Research Alignment
    • Stay up-to-date with advances in real-time computing, compilers, and systems programming.
    • Collaborate with algorithm and AI researchers to translate signal-processing pipelines into efficient runtime implementations.
    Requirements
    Education
    • Master s degree in Computer Science & Engineering or a related field.
    • (Bachelor s with an exceptional track record may be considered).
    Experience
    • 5+ years of professional experience in C++ system-level development.
    • Proven track record in designing and delivering complex, production-grade software systems.
    Technical Skills
    • Expert-level C++ (C++14/17/20): STL, templates, modern design patterns.
    • Strong knowledge of multi-threading, concurrency, synchronization, and memory management.
    • Experience writing low-level code: device drivers, firmware interfaces, or embedded Linux/RTOS.
    • Deep understanding and experience in Linux Kernel development and low-level operating system concepts.
    • Familiarity with hardware communication protocols (USB, BLE, Wi-Fi, nRF, SPI, I2C, etc).
    • Experience in performance optimization, debugging tools (gdb, valgrind, perf), and profiling.
    • Exposure to real-time systems, signal acquisition, or streaming data pipelines.
    Bonus Skills (Good to Have)
    • GPU programming (CUDA, OpenCL, Vulkan compute).
    • Experience integrating C++ with Python or Rust in hybrid pipelines.
    • Prior work in neurotech, robotics, IoT, or other real-time hardware-adjacent domains.
    • Familiarity with numerical methods, DSP, or machine learning integration.
    Soft Skills
    • Strong systems thinking: can see the big picture and design for scalability.
    • Exceptional problem-solving skills under performance/latency constraints.
    • Ability to work cross-functionally with hardware, AI, and product teams.
    • Clear communicator who can mentor, document, and lead by example.
    Compensation & Benefits
    • Competitive compensation with growth opportunities.
    • Opportunity to define and shape the core software architecture for a cutting-edge neurotech platform.
    • Work alongside an elite team at the intersection of hardware, neuroscience, and AI.
    • Flat hierarchy, ownership-driven culture, and the freedom to experiment and innovate.

    Mock Interview

    Practice Video Interview with JobPe AI

    Start Python Interview
    cta

    Start Your Job Search Today

    Browse through a variety of job opportunities tailored to your skills and preferences. Filter by location, experience, salary, and more to find your perfect fit.

    Job Application AI Bot

    Job Application AI Bot

    Apply to 20+ Portals in one click

    Download Now

    Download the Mobile App

    Instantly access job listings, apply easily, and track applications.

    coding practice

    Enhance Your Python Skills

    Practice Python coding challenges to boost your skills

    Start Practicing Python Now

    RecommendedJobs for You