Principal Software Engineer
Product Development Team
Experience Required : 8-10 Years
Position Type :Full-Time
Job Purpose:
The Principal Software Engineer / Team Lead is the senior hands-on technical lead within Professional Services. Reporting to the Professional Services Manager, the role designs the technical solution for customer implementations and integrations, leads a team of engineers to build and deliver it, and remains closely involved in the code. The role supports presales with technical scoping and estimates, sets engineering standards for the team, and makes sure every delivered solution is well-architected, secure, tested, and delivered on time and within the agreed scope.
Job Responsibilities & Duties
1. Solution Design & Architecture
- Translate customer requirements into technical solution designs covering application architecture, integrations, APIs, data models, data migration, and deployment (cloud, on-premise, or hybrid).
- Produce high-level and low-level designs (HLDs/LLDs), integration specifications, and architecture decision records for customer projects.
- Select appropriate technologies, frameworks, and patterns, balancing scalability, security, cost, and delivery timelines.
- Review designs with the Professional Services Manager and customer technical teams, and obtain sign-off before build.
2. Hands-on Engineering
- Write, review, and maintain production-quality code for complex and critical components.
- Build and troubleshoot integrations with third-party and customer systems (REST/SOAP APIs, messaging, databases, identity providers).
- Lead technical investigation of complex defects, performance issues, and production incidents through to resolution.
- Prototype and run proofs of concept to validate solution approaches before commitment.
3. Team Leadership
- Lead a team of software and integration engineers day to day: task planning, work allocation, and progress tracking.
- Mentor and coach engineers through code reviews, pairing, and technical guidance, and contribute to their performance reviews.
- Take part in hiring by defining technical assessments and interviewing candidates.
- Foster a culture of ownership, quality, and continuous improvement.
4. Delivery Support
- Break solution designs into work packages and provide reliable effort estimates to the Professional Services Manager and project managers.
- Run agile ceremonies for the team and track technical delivery against milestones.
- Identify technical risks, dependencies, and scope changes early and escalate them with proposed options.
- Support system integration testing, user acceptance testing, go-live, and handover to support teams.
5. Presales Technical Support
- Support sales, BD, and bid teams with technical scoping, solution outlines, and effort estimates for RFPs and tenders.
- Write the technical sections of proposals and contribute to Statements of Work (SOW).
- Deliver technical presentations, demos, and deep-dive sessions with customer technical teams.
6. Engineering Standards, Security & Quality
- Define and enforce coding standards, branching strategy, code review practice, and CI/CD pipelines for the team.
- Apply secure coding practices and ensure solutions meet customer security, data protection, and compliance requirements (e.g. ISO 27001, OWASP guidelines).
- Ensure adequate automated testing (unit, integration, and end-to-end) and technical documentation.
- Build reusable components, templates, and reference implementations to speed up future projects.
Key Performance Indicators
- Technical milestones delivered on time and within estimated effort.
- Quality of delivered solutions (defect rates in UAT and production, rework).
- Accuracy of technical estimates provided for projects and bids.
- Team productivity, skills growth, and retention.
Required Skills & Competencies
- Strong hands-on expertise in at least one modern stack (e.g. Java/Spring, .NET/C#, Node.js/TypeScript, or Python), plus front-end frameworks where relevant.
- Solid solution architecture experience: microservices, event-driven and API-first design, system integration, and SaaS platforms.
- Working knowledge of cloud platforms (AWS, Azure, or GCP), containers (Docker, Kubernetes), and CI/CD tooling.
- Good understanding of relational and NoSQL databases, data modelling, and data migration.
- Experience leading and mentoring engineering teams in an agile environment.
- Ability to produce clear technical documentation and estimates, and to explain technical options to non-technical stakeholders.
- Strong problem-solving and debugging skills, with the ability to work independently and in teams.