Principal Software Engineer - Enterprise Technology Solutions Principal Software Engineer Role Overview We are seeking an exceptional Principal Software Engineer to drive technological innovation and lead our software engineering team. As a Principal Software Engineer, this critical role demands a visionary technical leader who can architect, influence, and deliver complex software solutions that push the boundaries of performance and scalability. Key Responsibilities of the Principal Software Engineer Lead and influence strategic engineering decisions in a complex, dynamic technological environment As a Principal Software Engineer, design and implement highly performant, large-scale, mission-critical applications Provide technical leadership and mentorship to software engineering teams Drive architectural improvements and technological strategy Collaborate across multiple teams to ensure cohesive software development approaches Implement and optimise Continuous Integration and Continuous Delivery (CI/CD) pipelines Required Technical Expertise Leadership and Architectural Capabilities Proven experience of leading and influencing engineering decisions in a complex environment Demonstrated ability to build and run highly performant, large-scale, mission-critical applications Comprehensive background in software engineering with extensive technical depth Profound understanding of software architecture, including: Diverse architectural styles Advanced integration patterns Microservices and distributed systems design Performance optimisation techniques Methodological Proficiency Expert-level understanding of Agile development methodologies Advanced knowledge of Continuous Integration/Continuous Delivery practices in complex environments Technical Skills Mastery of multiple programming languages (e.g., Java, Python, Go, Kotlin) Deep understanding of cloud-native architectures Experience with containerisation technologies (Kubernetes, Docker) Advanced distributed systems design Microservices architecture Performance profiling and optimisation Enterprise-scale system design Qualifications Bachelor's or Master's degree in Computer Science, Software Engineering, or related field Minimum 8-10 years of progressive software engineering experience Proven track record of leading complex software development initiatives Strong communication and leadership skills Ability to translate technical concepts to non-technical stakeholders