This dynamic position supports our client’s Hosting infrastructure. The ideal candidate will have solid experience supporting 24x7x365 SaaS systems in AWS. This position interacts cross functionally to meet our client’s needs. Requirements:
- CICD Experience (Jenkins, CircleCI, Bitbucket, Git)
- Infrastructure as Code (Ansible, Terraform)
- Experience with Jenkins (Jenkins pipeline, basic to intermediate Groovy language) on both Linux and Windows
- Experience with creating and troubleshooting shell scripts (Linux/Windows)
- Experience with AWS, AWS CLI and AWS SDK (Intermediate to expert level in EC2/ALB/AutoScaling/CodeDeploy)
- Infrastructure provisioning experience with Ansible/Terraform
- Understanding of both Linux and/or Windows systems (eg: Systemd, Tomcat, Nginx, Windows services, IIS)
- Basic to intermediate experience with scripting languages like Python and/or programming languages like Java/C# etc
- Should have conceptual understanding of CICD
- Should have eagerness to automate anything and everything
- Should have an attitude to simplify, and improve existing tools and automations
- Deploy & manage cloud servers and applications supporting the Software as a Service functions
- Design and enhance our client’s cloud offerings through proof of concepts and testing new products and services.
- Develop and deploy Infrastructure as Code via Ansible/Terraform.
- Develop and manage the CICD automation leveraging Jenkins and AWS CodeDeploy.
- Participate in daily SCRUM product/project meetings.
- Participate in the Cloud Ops on call scheduled supporting a 24x7x365 operation.
- Responsible for management and monitoring of cloud-based environments for both systems and applications.
- Participate in and support capacity planning and the development of long-term strategic goals for our client’s systems and software in conjunction with client, end-users and department managers.
- Commitment to quality, reliability, up time, customer satisfaction and data security
- First-line incident management and communications, including follow-up with problem resolution post-mortem, and process improvement
- Proactive approach to observe and recommend on-going environment improvements by learning various systems and methodologies, so as to ensure performance, up-time, and avoiding potential pitfalls over time.
- Perform standard configuration, management, and maintenance tasks for related file systems, input/output systems, networking, clustering, storage, and applications.
- Test disaster recovery and backup/restore operations of systems and data to ensure system recovery from error or outage.
- Anticipate, mitigate, identify, troubleshoot, and resolve software and integration problems on all systems.
- Support application development teams throughout project lifecycles in a collaborative environment.
- Monitor, test, and tune system performance; preserve and provide system log files as needed.
- Recommend and execute modifications to systems in order to improve efficiency, reliability, and performance.
- Remain informed on laws, trends, and issues, including current and emerging technologies and best practices; advise, counsel, and educate executive and management teams on their relative importance.
- Ensure systems comply with policies, standards, licensing agreements, configuration guidelines, and best-practices for maintaining regulatory compliance.
- Ensure secure user access and role validation processes.
- Perform server/database transaction and security audits leading to identification and mitigation of security threats to enterprise data. Recommend and implement changes where necessary.
- Create required reports in response to business user needs.
- Develop, document, and maintain Unix system training materials and systems documentation for educating end users and new IT staff.