The Software Engineer will be responsible to deliver technically complex solutions perform system integration support for all product/platform work consult and partner with the technology business product owners to understand the end goal and offer solutions and recommendations during the design. This role is responsible for building and maintaining the automation and streamlining of software delivery and operations on an Agile team for new or existing Microservice based Platforms APIs and their components in AWS.
Responsibilities:
- Infrastructure as Code; Agile and DevOps Lifecycle Management; Source Code Management; Build Orchestration; Build Management; Artifact Repository Management; Test Driven Development; Automated Testing including Unit/Integration/Functional/Smoke/Regression/Stress/ Performance Testing; Static Code Analysis; Load and Performance Testing; Artifact Scanning; Database Schema Management Orchestration and Recovery; Compliance Automation and Audit Trails; Configuration Management; Containers; Application Release Automation; Deployment Strategies and Patterns including Blue/Green Deployment Canary Releases and Rolling Releases; Logging and Log Analytics; and Performance Monitoring and Management.
- Support and enforce the use of DevOps in full-stack Mobile delivery teams as a strategic asset of culture change to enhance the flow of business value to our clients.
- Creates and reviews CI/CD pipelines Infrastructure as Code (e.g. Terraform) for AWS and integrates security and code quality tools.
- Liaise with DevOps Center for Enablement (C4E) to ensure that any centralized DevOps tools or practices are followed and to share information about any team specific tools or practices that may benefit other teams.
- May take on several components of an initiative or a complex component of the SDLC lifecycle. Influencer at the work group/customer/user level. Works beyond routine nature of tasks utilizing specialized and broad knowledge. Works under broad supervision with little instruction.
- Active participant with the Mobile Scrum teams and Agile DevOps COE.
Requirements:
- Masters degree in computer science Math or related field of study Bachelors Degree
- 6 - 10 years of experience or equivalent education and software engineering training or experience
- In-depth knowledge in information systems and ability to identify apply and implement best practices
- Understanding of key business processes and competitive strategies related to the IT function
- Ability to plan and manage projects and solve complex problems by applying best practices
- Ability to provide direction and mentor less experienced teammates. Ability to interpret and convey complex difficult or sensitive information
- Hands-on experience with CI/CD tools AWS Tech Stack (Lambda IAM VPC ECS Fargate EC2 Route53 Aurora CloudFront CloudWatch SNS SQS API Gateway ELBs) and applying policies for accounts to establish governance
- Strong Infrastructure-as-Code experience with Terraform including deploying and managing AWS services
- Knowledge of Docker and hands-on experience in containerizing software applications; experience working with container orchestration and deployment platforms such as AWS ECS
- Experience with network architecture topologies hybrid connectivity and modern approaches to networking design
- Experience with AWS RDS Aurora is a plus
- Experience with Observability tooling that provides insight into Metrics Traces and Logs to software engineering teams
- Experience working in Agile teams and knowledge of Agile development & release practices.
- Good troubleshooting skills and show flexibility under changing conditions
- Knowledge of scripting language such as Python or Unix shell scripts
- Strong team player communicates well and caries an infectious can-do attitude