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.