Responsibilities
• Design, develop, implement, and maintain robust, scalable software solutions across the technology stack.
• Take ownership of software services and applications, ensuring reliability, performance, and maintainability at scale.
• Analyse business requirements and translate them into effective technical solutions.
• Participate in the full software development lifecycle, including design, development, testing, deployment, and ongoing support.
• Identify potential technical risks early in the development lifecycle and proactively design solutions to mitigate them.
• Collaborate with cross-functional teams including product owners, analysts, and other engineering teams to deliver high-quality software solutions.
• Conduct system analysis to identify opportunities for operational improvement and recommend enhancements to systems, tools, and processes.
• Implement best practices in software development, code quality, security, and system performance.
• Maintain clear documentation for systems, services, and development processes.
• Participate in code reviews and ensure adherence to coding standards and development guidelines.
• Support production systems and assist in diagnosing and resolving technical issues when required.
Core Technical Skills
• C#
• .NET Core
• ASP.NET
• Docker
• Kubernetes
• Microservices architecture
• Message Queueing technologies
• Microsoft SQL Server
• PostgreSQL
Competency
• Analytical Thinking
Ability to evaluate complex technical problems and design practical, maintainable, and scalable solutions.
• Problem Solving
Strong troubleshooting abilities with a structured approach to diagnosing and resolving system issues.
• Strategic Thinking
Ability to anticipate potential system or development challenges and proactively implement solutions.
• Collaboration & Teamwork
Works effectively with cross-functional teams, sharing knowledge and contributing to collective problem-solving.
• Leadership & Mentorship
Supports the development of junior and intermediate engineers through coaching, guidance, and knowledge sharing.
• Communication
Excellent written and verbal communication skills with the ability to explain technical concepts clearly.
• Accountability & Ownership
Takes responsibility for systems and services, ensuring quality, stability, and performance.
• Adaptability & Continuous Learning
Stays current with emerging technologies, industry trends, and best practices in software engineering