Developer fitness
Best gym routine for software engineers
Full-body, push-pull-legs, or upper-lower: how to pick based on your actual days, sprint schedule, and the one insight the research makes obvious. Once you decide, the complete plan has the exact program.
Routine types compared
Full body (3 days/week)
Best for: 3 available days, unpredictable schedule, returning to training
Pros
- + Every muscle trained 2–3× per week at only 3 sessions
- + Resilient: if one session shifts, the week still covers everything
- + Shorter sessions (45–50 min) fit around sprint schedules
Cons
- − Less total volume per muscle per session than split routines
- − Some exercise variety is sacrificed to keep sessions short
Best default for most software engineers.
Upper-lower (4 days/week)
Best for: 4 available days, moderately stable schedule, intermediate lifters
Pros
- + Each muscle trained 2× per week with more volume per session than full body
- + Upper days (Mon/Thu) and lower days (Tue/Fri) can accommodate a 4-day routine without back-to-back sessions
- + More room for exercise variety and volume progression
Cons
- − Requires a fourth session — harder to maintain through sprints and on-call
- − Missing one day means a full upper or lower muscle group is undertrained that week
Good choice if you have a stable 4-day window. Fragile for chaotic sprints.
Push-pull-legs (PPL, 6 days/week)
Best for: 6 available days, very stable schedule, advanced lifters with high volume tolerance
Pros
- + High volume per muscle group
- + Clear session structure that experienced lifters know well
Cons
- − At only 3 days per week, PPL hits each muscle once per week — the research-backed worse outcome for hypertrophy
- − Requires 6 days per week to train each muscle twice, which is incompatible with most SWE schedules
- − One production incident derails the whole split
Avoid for a 3-day constraint. Only viable at 5–6 days with a stable schedule.
The routine decision comes before the routine
Most fitness content gives software engineers a gym routine without asking the first question: how many days can you actually train, and how stable is that schedule?
The best gym routine for a developer with a stable 4-day week is not the best routine for a developer on a rotating on-call schedule. Getting this decision wrong means building a plan that collapses the first time a sprint runs hot.
This post is the decision guide — how to pick the routine type based on your actual constraints. Once you have made the call, the complete workout plan for software engineers has the exact program with sets, reps, and progression rules.
The SWE constraints that actually matter
Software engineering has specific scheduling patterns that most fitness routines ignore. The three constraints that determine which routine works are: available training days, schedule stability, and energy timing.
Available training days: how many sessions per week can you realistically commit to, in an average week, including sprint weeks and on-call rotations? The answer is usually lower than the idealized version. Three is a reliable floor for most engineers. Four is possible for some. Six is optimistic for almost anyone with a demanding job.
Schedule stability: does your week look roughly the same every week, or does it vary based on sprint phase, on-call rotation, or release windows? High stability supports upper-lower or PPL splits where the plan depends on specific days. Low stability demands a full-body approach where any three non-consecutive days work.
Energy timing: technical work drains cognitive energy. Some engineers train best in the morning before the mental load accumulates; others find post-work training a decompression. Both can work, but morning training typically has higher completion rates because meetings and incidents cannot push it out. Whatever time you pick, it needs to be protected in the same way a recurring calendar block is protected.
Full body vs upper-lower vs push-pull-legs
The research on training frequency is clear: training each muscle group at least twice per week produces better hypertrophy than training it once per week. This single fact determines which splits are viable at which frequencies.
At three training days per week, the only way to hit each muscle twice is full-body training. Push-pull-legs at three days hits each muscle once — the research-backed inferior outcome. Upper-lower at three days hits each muscle 1.5 times on average (upper muscles get two upper days, lower muscles get one lower day, depending on how the week falls) — marginally better than PPL but still not the optimum.
At four training days, upper-lower becomes efficient: upper-lower-upper-lower or upper-lower-rest-upper-lower gives every muscle two sessions per week with reasonable volume per session.
At five or six days, PPL becomes viable — but this is where most developer schedules fall apart. Six-day commitments survive one calm week before an incident or launch kills the second lower day, and you end up with legs undertrained for two weeks.
How to pick based on your schedule
The honest framework: start with your worst week, not your best week. What would training look like during a production outage, a release weekend, or the last two weeks of a quarter? The routine that survives your worst week is the right routine.
If your worst week gives you three training sessions, use full-body. If it reliably gives you four, upper-lower is worth considering. If your worst week gives you fewer than three, start with two full-body sessions as your floor and build from there — consistency over frequency.
A secondary test: have you failed at a routine before? If you tried a PPL split and stopped after three weeks, the problem was almost certainly schedule fragility, not lack of motivation. Switching to a full-body plan with the same exercise quality but fewer sessions eliminates the scheduling dependency that caused the failure.
The 3-day full body default
For most software engineers, the default is three full-body days per week. Here is the abbreviated logic: three sessions, every muscle trained roughly twice, sessions in the 45-to-50-minute range, resilient when the sprint disrupts the week.
The exact program — Monday, Wednesday, Friday sessions with exercise selection, sets, reps, and progression — lives in the complete workout plan for software engineers. That post has the artifact; this one has the decision.
One scheduling note that makes a meaningful difference: name your sessions by number, not day. You are not failing because Tuesday got blown up — you are just moving Session 2 to Thursday. That small reframe removes the "I missed the week" mental model that causes restarts.
Movement outside the gym
Whichever routine type you pick, the gym routine is the anchor but not the complete picture. Sitting all day still needs a daily movement default.
Two walks is the minimum: one before the first deep-work block, one after the laptop closes. These two anchors add 20 to 30 minutes of daily movement and create work-rest boundaries. On non-training days, a midday walk fills the third slot. A walking pad during calls or shallow admin work adds movement without disrupting focus.
Muscle and progressive overload come from the gym routine. Fat loss and daily well-being are also shaped by what you do the other 22 hours. The routine handles the former; the daily movement defaults handle the latter.
Common questions
- What is the best gym routine for software engineers?
- It depends on your available days and schedule stability. For most engineers with three reliable training days and an unpredictable sprint schedule, a three-day full-body routine is the best default. It trains every muscle twice per week, is resilient when sessions shift, and keeps sessions under 50 minutes. If you have a stable four-day window, an upper-lower split is worth considering.
- Is push-pull-legs a good routine for developers?
- At six days per week with a stable schedule, PPL works well. At three days — which is what most engineers can commit to — PPL hits each muscle only once per week, which research shows is less effective for hypertrophy than twice per week. Full-body is the better choice at a three-day constraint.
- How many days should developers lift?
- Three days per week is the best starting point for most developers. It is enough to train each muscle twice per week (with full-body programming), leaves recovery room for a brain-heavy job, and survives bad sprints. Four days works if the schedule is reliably stable. Two days can maintain progress during high-stress periods.
- Should software engineers lift before or after work?
- Morning training has the highest completion rate for developers because technical work expands later in the day — meetings, incidents, and deadlines routinely push evening training out. If morning does not work, protect a fixed post-work window like an external meeting. The best time is the one you can defend when work gets loud.
- What is the difference between this guide and the workout plan post?
- This guide is the decision: which routine type fits your schedule, and why full-body beats PPL at three days. The workout plan for software engineers is the artifact: exact days, exercises, sets, reps, and progression rules. Read this first, then use the workout plan once you have made the call.
- I tried a routine before and quit. What was the problem?
- For most developers, the failure mode is schedule fragility, not motivation. A PPL split or a four-day program works fine until the first sprint crunch, then collapses and triggers a restart cycle. Switching to a full-body three-day plan eliminates the day-specific dependencies that cause the fragility. The routine should survive your worst week, not just your best.
References
- Schoenfeld BJ, Ogborn D, Krieger JW. Effects of Resistance Training Frequency on Measures of Muscle Hypertrophy: A Systematic Review and Meta-Analysis. Sports Medicine. 2016. https://pubmed.ncbi.nlm.nih.gov/27102172/
- Schoenfeld BJ, Ogborn D, Krieger JW. Dose-response relationship between weekly resistance training volume and increases in muscle mass: A systematic review and meta-analysis. Journal of Sports Sciences. 2017. https://pubmed.ncbi.nlm.nih.gov/27433992/
Ready for the exact program?
Once you have decided on full-body (the default for most engineers), the complete workout plan for software engineers has the artifact: exact days, exercises, sets, reps, and progression rules. That post is the plan — this post is the decision guide.
For the broader programming context — posture framing, posterior chain emphasis, and the 3-day template built around desk-worker physiology — read the strength training for desk workers guide. Or see the software engineer coaching page for 1:1 coaching. Coaching is application-based.
Coaching fit
Want this built around your real week?
Use the guide as a baseline. If your schedule, food, or consistency keeps breaking the plan, Kris can map the training and nutrition to the week you actually live.
Apply for 1:1 coachingWeekly training insights
One email a week on training, recomposition, and building the body you actually want. No spam. Unsubscribe anytime.
Keep going
Related guides
Proof and next steps