Mid-Level DevOps Engineer (Production Infrastructure

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Any

SALARY

800

HOURS PER WEEK

40

DATE UPDATED

Jul 20, 2026

JOB OVERVIEW

About the Role

We're looking for a Mid-Level DevOps Engineer with hands-on production experience to review, improve, and productionize our deployment infrastructure.

Our current technology stack: Backend: FastAPI · Frontend: Next.js · Database: MySQL · Cloud: DigitalOcean · Containerization: Docker · CI/CD: GitHub Actions

Much of the initial infrastructure is already in place. Your role is to validate the architecture, identify weaknesses, improve reliability, strengthen security, and ensure our platform is production-ready. You'll take ownership of our production infrastructure, including deployment workflows, monitoring, scalability planning, operational security, documentation, and knowledge transfer.

This engagement will initially be project-based, with the opportunity to transition into a part-time or full-time role based on performance, project needs, and company growth.

Responsibilities

Review and improve the existing production infrastructure
Audit and optimize Docker configurations and containerized deployments
Review, improve, and maintain GitHub Actions CI/CD pipelines
Configure and maintain production monitoring, logging, and alerting (Prometheus, Grafana)
Configure and optimize reverse proxies (Nginx or Caddy), HTTPS, SSL/TLS, DNS, and networking
Configure and manage CDN services (e.g., Cloudflare) and caching strategies where appropriate
Review and improve infrastructure security, firewall rules, secrets management, and server hardening
Validate backup and disaster recovery procedures
Design and improve deployment strategies that minimize downtime and operational risk
Review infrastructure readiness for ~500–1,000 concurrent users, with a clear path toward 10,000+
Troubleshoot production i ---------- and recommend long-term improvements
Produce infrastructure documentation, operational runbooks, and handover documentation

Required Qualifications

We're specifically looking for candidates with real production experience — not personal projects or tutorial deployments.

3+ years of DevOps, Platform Engineering, or SRE experience
Experience deploying and operating customer-facing production applications
Strong Linux administration; Docker in production
CI/CD pipelines (GitHub Actions, GitLab CI, Jenkins, or similar)
Reverse proxies (Nginx/Caddy); HTTPS, SSL/TLS, DNS, networking fundamentals
CDN platforms (Cloudflare, CloudFront, Fastly, or equivalent)
Cloud infrastructure (DigitalOcean, AWS, Azure, or GCP)
Monitoring/observability (Prometheus, Grafana, Loki, ELK/OpenSearch, or equivalent)
Production troubleshooting, i ---------- response, infrastructure security, server hardening
Scalability planning, performance optimization, technical documentation

Preferred Qualifications

Zero/minimal-downtime deployments · high-availability architecture · load balancing · Infrastructure as Code (Terraform, Pulumi) · Redis/application caching · message queues (RabbitMQ, Kafka, SQS) · production database optimization · disaster recovery planning · performance testing and capacity planning

What We're Looking For

Someone who understands production engineering principles, not just how to deploy an application. We value engineers who can explain why they make operational decisions, not just how to execute commands.

HOW TO APPLY — read carefully, applications that skip this will not be considered:

Start the FIRST LINE of your application with the word ORBIT.

Then answer these three questions in your own words (no AI-generated answers — we will verify everything in a live screen-share interview):

Describe one production i ---------- you personally handled: what broke, how you diagnosed it, and what you changed afterwards.
When did you last test-restore a database backup, and how did you verify the restored data was correct?
Link to something that proves your work: a CI/CD workflow file you wrote, a live application you operate, or an architecture/runbook sample (redacted is fine).

Applications consisting only of a generic CV or a restated version of this job post will be rejected.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0191
Total Execution Time  0.0204
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,532,240 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Mid-Level-DevOps-Engineer-Production-Infrastructure-1653970
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0141 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1653970
 LIMIT 1 
0.0019   SELECT *
FROM `employers`
WHERE `employer_id` = 698465
 LIMIT 1 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1653970
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-11',ej.date_added) duration_daysDATEDIFF('2026-08-11',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-11',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1653970' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1653970 
0.0017   UPDATE employer_jobs SET hit_counts '***May-24-2026=875***May-25-2026=46***May-26-2026=29***May-27-2026=11***May-28-2026=4***May-29-2026=2***May-30-2026=4***May-31-2026=1***Jun-01-2026=2***Jun-02-2026=7***Jun-03-2026=4***Jun-04-2026=2***Jun-05-2026=13***Jun-06-2026=4***Jun-07-2026=7***Jun-08-2026=6***Jun-09-2026=11***Jun-10-2026=4***Jun-11-2026=6***Jun-12-2026=4***Jun-13-2026=2***Jun-14-2026=1***Jun-15-2026=1***Jun-16-2026=3***Jun-18-2026=1***Jun-19-2026=1***Jun-20-2026=1***Jun-21-2026=1***Jun-23-2026=3***Jun-24-2026=1***Jun-25-2026=3***Jun-26-2026=2***Jun-27-2026=5***Jun-28-2026=3***Jul-03-2026=1***Jul-06-2026=2***Jul-07-2026=1***Jul-08-2026=1***Jul-12-2026=1***Jul-15-2026=4***Jul-16-2026=52***Jul-17-2026=2***Jul-18-2026=1***Jul-20-2026=405***Jul-21-2026=72***Jul-22-2026=52***Jul-23-2026=26***Jul-24-2026=13***Jul-25-2026=13***Jul-26-2026=8***Jul-27-2026=15***Jul-28-2026=9***Jul-29-2026=9***Jul-30-2026=7***Jul-31-2026=4***Aug-01-2026=8***Aug-02-2026=8***Aug-03-2026=6***Aug-04-2026=3***Aug-05-2026=8***Aug-06-2026=2***Aug-07-2026=1***Aug-08-2026=1***Aug-10-2026=1***Aug-11-2026=1' WHERE job_id'1653970'  
0.0006   UPDATE employer_jobs SET monthly_hits '***May-2026=972***Jun-2026=98***Jul-2026=697***Aug-2026=39' WHERE job_id'1653970'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1653970' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1653970 
0.0059   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '698465'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)