Principal Engineer - C++ - R29535 | ScaleneWorks INC
Job Description
Principal Engineer - C++
Company Overview
Not specified.
Job Summary
The Technical Lead is responsible for ensuring the technical excellence of the team through leadership, mentorship, and applying best practices in software development. This role will involve assessing complex problems, leading projects, and contributing to cross-functional initiatives while producing high-quality and efficient code.
Responsibilities
- Provide technical leadership and training to Specialists and Senior Specialists, ensuring the team performs at a high level proficiently.
- Assess complex problems affecting business drivers and recommend solutions and risk mitigation plans.
- Manage high-level system design and architecture, including distributed systems challenges and scaling of backend applications.
- Drive the evolution of components and suggest improvements to engineering processes.
- Foster collaboration within cross-functional teams and ensure smooth communication among stakeholders.
- Coach and mentor junior team members, promoting knowledge sharing and technical growth.
Qualifications
-
Proficient understanding of Software Architecture patterns (Client/server, Layered, 3-Tier, Microservices).
-
Extensive experience in Requirements Engineering, including functional and non-functional requirements.
-
Strong background in Software Design Principles (Object-Oriented Analysis/Design, SOLID principles) and design patterns (preferably familiar with Gang of Four design patterns).
-
Profound knowledge of C++ OOP essentials (encapsulation, overloading, polymorphism) and modern language features (smart pointers, RAII).
-
High-level understanding of system design trade-offs including:
- Monolith vs Microservice
- On-Premises vs Cloud
- Virtual Machines vs Containers
-
Familiarity with CI/CD principles, caching techniques, and modern software development toolchains.
-
Knowledge of quality code production practices, including code reviews, unit testing, and refactoring.
-
Strong problem-solving skills with the ability to troubleshoot software and system defects efficiently.
Preferred Skills
- Exposure to multiple programming languages and frameworks beyond C++.
- Experience with Agile methodologies and project management tools.
- Participation in developer advocacy events such as hackathons and conferences.
Experience
- Prior experience as a technical lead or developer with demonstrable project management skills.
- Experience in building and leading technical teams, mentoring, and coaching junior staff is preferred.
Environment
Not specified.
Salary
Not specified.
Growth Opportunities
Not specified.
Benefits
Not specified.