Create, manage and version Azure automation scripts.
Familiarity with many common Azure PowerShell or CLI commands.
Use of PowerShell to deploy Azure ARM templates.
Service Fabric
Understand Service Fabric cluster creation, management, tear-down.
Ability to scale up/down, in/out Azure clusters.
Scripting of Service Fabric clusters using ARM templates.
Determine when a cluster is unhealthy and ability to act upon that.
Know your way around Service Fabric explorer.
How to manage services, create, monitor, restart.
Service orchestration and cluster balancing.
Windows Admin
Windows Server 2016 Data Centre.
Windows Nano Server.
Use of Windows Admin Centre to manage VMs, services etc.
VM patching and Microsoft updates.
RDP.
Multi-hop logins.
Use of stepping stones in security.
Monitoring and Alerting (AppInsights and Datadog are the tools used)
Develop monitoring and status dashboards in AppInsights.
Implement health checks and use the ping facility in Azure Availability tests to exercise the health checks.
Implement tools to track system usage, feature usage, and flow.
Use of alerts to establish root-cause-analysis of failures.
Use of telemetry to establish root-cause-analysis.
Perform ongoing tuning to reduce meaningless or non-actionable alerts.
Code Quality
Use of SonarCube for static code analysis.
Drive and manage the build and release process.
Analyze, architect, and develop new deployments, mechanisms and procedures for the cloud, virtual hardware, and high-availability enterprise environments.
Own the day-to-day Build activities.
Support co-workers & development team with demos & training of upcoming changes.
Manage and develop our CI/CD process.
Strong debugging skills.
Experience/knowledge with Azure DevOps
Preferred experience with developing/supporting installers (MSI)
Operational experience with C#, AngularJS
Other Skills
Security
Must be able to write secure code to protect applications from attack, as well as defend against common cybersecurity vulnerabilities.
Understand different vulnerabilities and the correct approach to avoid them.
Perform security activities earlier in the app lifecycle.
Network awareness / monitoring.
A keenness to continually monitor the platform, especially network performance and quickly diagnose and address problems.
Soft Skills
Customer First Mindset
While the devOps team is not typically an external-facing role, developers, QA, customer success, project management, and business leaders should be seen as customers.
When juggling requests from operations, development, and product teams the ability to empathize, prioritize, and be transparent are key to successful relationships.
First and foremost, a great devOps team engineer will always care about delivering value to customers and wants to understand and measure how their work is moving the needle.
Collaboration
Strong devOps engineers must be great team members and help relieve bottlenecks by assisting co-workers as necessary.
Any problem is everyone's problem, a great engineer always makes those around them better.
Flexibility & Multi-tasking
A successful devOps team demands flexibility, potential out-of-hours and a willingness to get things done.
As a resource that works on mission-critical systems at the heart of processes for different teams, an Ops engineer gets requests from many different people at once.
Everything is important and everything is urgent, devOps engineers find themselves putting out fires, so the ability to work on multiple tasks at the same time is critical.