Software Engineer - Apprenticeship
Byron Center, Michigan, United States
• Worked with Cloud / DevOps in an Agile business environment. • While working at Smoothstack, I deployed an online banking application to AWS Cloud. This banking application included backend microservices written in Java using Spring Boot, frontend webpages written with React and Angular, a MySQL database, and a gateway that routed traffic to the backend microservices.• Containerized applications by creating Dockerfiles and Docker-Compose files to create images that would then be pushed to AWS ECR.• Deployed applications using both Docker and Kubernetes to AWS. Services such as ECS, EKS, and ECR were used for deployment to achieve high availability, scalability, and efficiency.• Created Infrastructure as Code using Terraform for simplified rapid deployment of applications.• Implemented CI/CD pipelines through Jenkins to create build automation for applications. This includes setting up Jenkins, creating pipelines using Jenkinsfiles, using parameterized builds to allow deployment to ECS and EKS, pushing build artifacts to ECR, creating rollback pipelines, and deployment via Terraform. Webhooks were implemented to allow for pipelines to automatically run upon pushing code to a repository.• AWS services utilized: ECS, EKS, EC2, S3, IAM, ECR, ELB, VPC, RDS, Subnets, LoadBalancers.• Used Gitlab for version control: Utilized branching strategies: committed code to a feature branch that would be merged to a development branch after being reviewed by team members. The development branch would then be branched out to a staging branch, where final fixes occur before it is pushed to master branch.• Communicated effectively with product owners as well as team members in an Agile environment to deliver exceptional products.