Associate Principal Engineer, Dotnet fullstack(Angular)
Job Description
Job Description
REQUIREMENTS:
• Total experience: 9+ years.
• Must have experience of designing full-stack solutions for multi-tiered modern software and data applications.
• Must have experience with development using .NET Core .NET 10 (or .NET 4.8; we are currently upgrading), ASP.NET MVC/Web API, and C#.
• Hands on working experience in front end technologies like HTML5, CSS JavaScript, Angular/React.
• Hands on experience with database. (SQL, Oracle, Postgresql)
• Should be able to deliver solutions architecture documentation and diagrams.
• Strong hands-on Software Engineering background and a passion for innovation.
• Should have applied understanding of software architecture and refactoring patterns.
• Should have experience of architecting Agentic AI and RAG workflows. with technical proficiency in orchestration and agentic frameworks such as LangGraph and Semantic Kernel.
• Should have experience in the design and delivery of high availability cloud architectures on Azure/AWS, leveraging PaaS, IaaS + containerised workloads on Docker/Kubernetes.
• Should have experience of designing data lake, warehousing, and data processing solutions in the Cloud.
• Should have experience of DevOps, CI/CD, IaC, and SRE best practices.
• Experience of building technology roadmaps, planning the evolution of solutions, technology choices and mitigation of risks/issues to progress towards a strategic vision and in support of investment cases.
• Strong interpersonal, communication, and presentation skills applicable to a wide audience including senior management and customers.
• Should have awareness of Security Engineering best practice
RESPONSIBILITIES:
• Writing and reviewing great quality code.
• Understanding functional requirements thoroughly and analysing the client’s needs in the context of the project.
• Provide proactive design leadership and direction to multiple engineering teams, maintaining effective partnerships with engineering leaders and Product managers.
• Lead the architectural design of multi-tiered products and data applications to meet stakeholder requirements across multiple projects and investments.
• Proactively manage the applications portfolio to address technology debt, mitigate risks and progress the technology stack.
• Develop proof of concept solutions to validate design / technology choices, approaches, and patterns, in collaboration with engineering team members.
• Solve problems, promote knowledge sharing and maintain architecture standards across engineering teams.
• Prepare and maintain technology roadmaps from current to target state.
• Proactively research, monitor, learn, and assess industry trends, alternative technologies, and solutions, in support of business growth.
• Advanced problem-solving experience, leading teams in identifying, researching, and coordinating the resources necessary to effectively diagnose and troubleshoot complex project issues.
• Strong modelling capability with the ability to clearly represent complex ideas graphically.
• Able to provide guidance to engineering teams and partner closely with data/product stakeholders to lead solutions design across a range of initiatives, multiple functional groups, and departments in an agile environment.
• Ability to balance architectural purity with constraints and commercial goals.
• Identify opportunities to reduce technology costs and increase business efficiency.
• Envisioning the overall solution for defined functional and non-functional requirements, and being able to define technologies, patterns and frameworks to realize it.
• Determining and implementing design methodologies and tool sets.
• Enabling application development by coordinating requirements, schedules, and activities.
• Being able to lead/support UAT and production roll outs.
• Creating, understanding and validating WBS and estimated effort for given module/task, and being able to justify it.
• Addressing issues promptly, responding positively to setbacks and challenges with a mindset of continuous improvement.
• Giving constructive feedback to the team members and setting clear expectations.
• Helping the team in troubleshooting and resolving of complex bugs.
• Coming up with solutions to any issue that is raised during code/design review and being able to justify the decision taken.
Qualifications
Bachelor’s or master’s degree in computer science, Information Technology, or a related field.
