Principal C++ Developer
Madfish
Senior / Principal C++ Developer (Linux Systems)
About the Role:
We're seeking a Senior or Principal-level C++ Developer who can operate at the highest technical level - someone who doesn't just write code, but owns entire features, makes architectural decisions, and drives technical excellence.
This is a role for experienced engineers who:
- Have mastered modern C++ and can architect complex systems independently
- Thrive with minimal supervision and full technical autonomy
- Can take a feature from initial concept through to production deployment
- Are ready to collaborate as equals with other senior/principal engineers in a lean, high-performing team
You'll work on performance-critical applications in Linux environments where your decisions matter and your expertise shapes the product.
Technical Stack
Core Technologies:
- C++17 / C++20 / C++23 / C++26 (modern standards)
- Linux: GCC, Clang, GDB, Valgrind, CMake
-
STL, templates, smart pointers, move semantics, lambdas
Focus Areas:
- Distributed systems and computation
- Concurrency and performance optimization
- Scalability and memory management
Key Responsibilities
What Principal/Senior Level Means Here:
- Full Feature Ownership: You own features from concept → architecture → implementation → deployment. No hand-holding.
- Architectural Leadership: Design and architect modern C++ applications for Linux environments - your decisions shape the system
- Technical Authority: Participate in deep technical discussions, provide architectural guidance, conduct thorough peer code reviews
- Complex Problem Solving: Tackle challenging problems in distributed systems, scalability, and performance optimization
- Peer Collaboration: Work directly with other senior/principal engineers as equals in an autonomous, lean setup
This isn't a role where you execute tickets - you define them, architect solutions, and see them through.
Required Qualifications
Seniority Level:
- 8+ years of production C++ development experience
- Principal or Senior-level expertise - you should be comfortable making architectural decisions independently
- Proven track record of owning complex features end-to-end
- Experience mentoring or guiding other engineers (even informally)
Technical Expertise:
- Mastery of modern C++ (C++17/20/23/26) - not just familiarity
- Deep expertise in STL, templates, smart pointers, move semantics, lambdas
- Strong foundation in algorithms, data structures, memory management, and concurrency
- Hands-on experience architecting and debugging complex Linux-based systems
- Ability to work autonomously and make technical decisions with minimal supervision
Soft Skills:
- Strong ownership mindset - you take full accountability for your technical decisions and delivery
- Attention to quality and detail at every development stage
- Excellent technical communication - can explain complex concepts clearly
- Comfortable with asynchronous collaboration in distributed global teams
- Adaptable to changing priorities and evolving technical challenges
- Proactive problem-solver with transparent progress reporting
Language:
- Advanced English (C1) for direct client communication and technical discussions
Nice to Have:
- Experience with performance-critical or distributed systems
- Client-facing experience and ability to translate technical concepts
- Track record of architectural decisions in complex projects
- Contributions to open-source or technical communities
What We Offer
Work Environment:
- Lean, autonomous engineering setup
- No bureaucracy - focus on building great software
- Direct collaboration with other senior/principal engineers
- Respectful peer communication and knowledge sharing culture
Professional Growth:
- Cutting-edge projects with modern C++ standards
- Full technical autonomy and decision-making authority
- Opportunity to shape architecture and technical direction