Konrad Podgórski

DevOps engineer Infrastructure in code, releases in one merge.

For teams whose AWS account grew by hand, or whose releases depend on one person remembering the steps: Terraform for the infrastructure, checks in the pipeline and releases as a workflow, so anyone on the team can ship.

Get in touch The tools behind it

Four parts of DevOps work.

Each one kept in code and changed through review.

  1. Infrastructure as code

    Every resource in Terraform, the old ones too.

    Multi-account layouts with shared modules, importing what was created by hand instead of rebuilding it, and state moves reviewed like any other change, with the plan read in the pull request before anything is applied.

    Infrastructure as code skills

  2. CI/CD

    A release is one merge.

    GitHub Actions with reusable workflows shared across repositories, tests that run on what actually ships, Terraform plan and apply gated on review, and release automation, so a release is a workflow rather than a checklist.

    CI/CD skills

  3. Code quality and security

    Problems found in review, not in production.

    Linters and security scanners on every change: ShellCheck, actionlint and hadolint for the pipeline itself, gitleaks and Semgrep for secrets and risky code, Trivy and Checkov for images and infrastructure. OIDC federation gives CI access to AWS without stored keys.

    Code quality and security skills

  4. Containers

    The same stack on a laptop and in production.

    Docker and Compose for local stacks, with emulators and mocks standing in for outside services, and images built in CI and pushed to ECR for ECS.

    Container skills

The tools behind DevOps work.

Bash and Python hold the pipelines and tooling together.

Infrastructure as code

All infrastructure as code skills

  • Terraform
  • Reusable modules
  • Multi-account layouts
  • Importing existing infrastructure
  • Terraform refactoring
  • Terraform Cloud (HashiCorp's hosted Terraform runs)
  • ECS (Amazon Elastic Container Service)
  • ECR (Amazon Elastic Container Registry)
  • Lambda (AWS Lambda: functions without servers to manage)
  • CloudFront (Amazon's content delivery network)
  • CloudFront Functions (Small functions that run at the CloudFront edge)
  • Route 53 (Amazon's DNS service)
  • IAM (AWS Identity and Access Management)
  • IAM (AWS Identity and Access Management) Identity Center
  • Secrets Manager
  • SSM (AWS Systems Manager) Parameter Store
  • KMS (AWS Key Management Service)
  • GitHub Actions
  • Reusable workflows
  • Gated Terraform plan and apply
  • Release automation
  • CodePipeline
  • CodeBuild

Code quality and security

All quality and security skills

  • pre-commit (Runs checks before each commit)
  • ShellCheck (Linter for shell scripts)
  • actionlint (Linter for GitHub Actions workflows)
  • hadolint (Linter for Dockerfiles)
  • gitleaks (Finds secrets committed to git)
  • Semgrep (Static analysis for risky code patterns)
  • Trivy (Vulnerability scanner for container images and infrastructure code)
  • Checkov (Policy scanner for infrastructure code)
  • OIDC (OpenID Connect) federation for CI

Containers and scripting

All container skills

  • Docker
  • Docker Compose
  • Bash
  • Python

Blue marks what I work with now.

The same work, seen from two other sides.

Need a DevOps engineer?

Tell me about your infrastructure and your pipeline.

Get in touch