Overview
Job Summary:
As Senior Cloud Engineer, you will build solutions to enhance availability, performance, and stability of our cloud services, along with the enabling platform automation and technical services for solution delivery in line with regulatory compliance. You will be working primarily on non-production environments and supporting the release of products into production environments. You will be responsible for data collection and configuration management, as well as disaster recovery planning, capacity engineering, reliability improvement initiatives and platform automation. This may require you to work outside of normal business hours providing support to the development and support functions.
In this role you will be responsible for understanding and setting the example of best practice and standards to develop and implement solutions that operate at scale - seeing your own technology efforts directly improve the reliability and availability of products and achieve the aspiration of “Release on Demand”. You will own development efforts in each sprint from planning to delivery to realise this goal and collaborate with different teams to review, design and implement solutions. As Senior Cloud Engineer, you will be expected to take on more complex activities either as part of a team or independently and when in a team you will be expected to promote the behaviours and standards that others aspire to achieve.
Key Accountabilities
Release & deployment
- Assesses and analyses release components
- Provides input to scheduling
- Carries out the builds and tests in coordination with testers and component specialists maintaining and administering the tools and methods – manual or automatic - and ensuring, where possible, information exchange with configuration management
- Ensures release processes and procedures are maintained
Service acceptance
- Engages with project management to confirm that products developed meet the service acceptance criteria and are to the required standard
- Feeds into change management processes
System software
- Reviews system software updates and identifies those that merit action
- Tailors’ system software to maximise hardware functionality
- Installs and tests new versions of system software
- Investigates and coordinates the resolution of potential and actual service problems
- Prepares and maintains operational documentation for system software
- Advises on the correct and effective use of system software
Programming & software development
- Designs, codes, tests, corrects and documents complex programs and scripts and integration software services and subsequent iterations
- Applies agreed standards and tools, to achieve well-engineered outcomes
- Participates in reviews of own work and leads reviews of colleagues' work
Systems integration & build
- Defines the software modules needed for an integration build and produces a build definition for each generation of the software
- Accepts completed software modules, ensuring that they meet defined criteria
- Produces software builds from software source code for loading onto target hardware
- Configures the hardware and software environment as required by the system being integrated
- Produces integration test specifications, conducts tests and records and reports on outcomes
- Diagnoses faults and records and reports on the results of tests
- Produces system integration reports
Systems design
- Undertakes complete design of simple applications using simple templates and tools
- Assists as part of a team on design of components of larger systems
- Produces detailed designs including for example: physical data flows, file layouts, common routines and utilities, program specifications or prototypes, and backup, recovery and restart procedures
Methods and tools
- Provides advice and guidance to support adoption of methods and tools and adherence to policies and standards
- Tailors processes in line with agreed standards and evaluation of methods and tools
- Reviews and improves usage and application of methods and tools
Conformance review
- Conducts formal reviews of activities, processes, products or services
- Collects, collates and examines records as part of specified testing strategies for evidence of compliance with management directives, or the identification of abnormal occurences
- Analyses evidence collated and drafts part or all of formal reports commenting on the conformance found to exist in the reviewed part of an information systems environment
Emerging technology monitoring
- Supports monitoring of the external environment and assessment of emerging technologies to evaluate the potential impacts and opportunities to the organization for new ways of working
- Contributes to the creation of briefings and presentations, technology road mapping and the sharing of knowledge and insights about the relevance and potential value of new technologies to the organisation
Specialist advice
- Actively maintains knowledge in one or more identifiable specialisms
- Provides detailed and specific advice regarding the application of their specialism(s) (i.e. in an aspect of information or communication technology, technique, method, product or application area)
Capacity management
- Monitors service component capacity and initiates actions to resolve any shortfalls according to agreed procedures
- Applies techniques to control the demand upon a particular resource or service
- Contributes to capacity modelling and planning
- Supports the design of service component capacity
Incident management
- Prioritises and diagnoses incidents according to agreed procedures. Investigates causes of incidents and seeks resolution
- Escalates unresolved incidents
- Facilitates recovery, following resolution of incidents
- Documents and closes resolved incidents according to agreed procedures
Other
- Carryout any other reasonable duties as requested
Knowledgedge and experience
- Azure PaaS & IaaS VM setup, configuration, engineering & development experience
- Experience in Microsoft Office 365 and PowerApps engineering desirable
- Understanding of CI/CD pipeline build, improvement and management
- Hands on & demonstrable experience with cloud infrastructure: Azure PaaS & IaaS, PowerShell & ARM Template Automation, Software Defined Networking, Virtual machine automation for Windows Server, Linux and associated infrastructure management layer automation
- Exposure to and maintenance of configuration management and orchestration tools
- Diagnosing and troubleshooting incidents, problems and service-outages in web applications and network servicesExposure to system and application-level telemetry for large distributed & micro services Cloud Architectures
- Understanding in building cloud services within regulated environments
- Azure Devops, Octopus Deploy, TeamCity, Jenkins, SonarQube, Git experience or knowledge of similar products also be useful
- Experience of robust and repeatable automation of third-party products into Azure IaaS (e.g., Oracle, Java, Tenable, etc.)
- Excellent knowledge of ITIL, Foundation certification is desirable
- Experience in Scrum & Agile methodologies
- Microsoft Azure Certifications are desirable
Education:
Bachelor’s Degree in a technical discipline (Software Engineering, Computer Science etc.) or a related study, or equivalent related experience
English: Fluent