Avoiding Burnout While Still Getting the Work Done
- Published at
What Would You Do If a Project Needed Overtime?#
This is a story about someone who really didnât want to work overtimeâ
but still cared deeply about getting things right.
A New Thought Process#
After hitting a wall with the framework upgrade, I began looking for other ways to support the current system and prepare for future service separation.
One promising direction was a CSS framework migration.
Without formal engineering management practices, itâs easy to end up with multiple solutions to the same problem.
In frontend work, this can be especially costlyâsince client-side assets directly affect performance.
At the time, our project used three different CSS frameworksâa nightmare for any frontend engineer.
Every new design meant figuring out which set of components and styles it referenced.
It was inefficient, error-prone, and painful to maintainâplus the performance hit from loading redundant styles.
Iâd seen this problem before, and had led similar refactors in a previous job.
Whatâs More Important Than Performance#
Performance was a concern, but the deeper issue was structural.
Some implementations directly coupled business logic with UI components from external libraries.
Without an abstraction layer, switching frameworks or updating the design system later would be painful.
I didnât believe any of the current frameworks were long-term solutions.
For a mature B2C product, a custom UI layerâoptimized and leanâis often the logical next step.
But without the resources for that, I proposed a pragmatic alternative: standardize on a single framework.
Three key goals:
- Normalize the abstraction layer between business logic and UI
- Reduce ambiguity in design/implementation discussions
- Eliminate unnecessary decision-making during development
How to Deliver Without Overtime#
The company wouldnât allocate dedicated resources.
I worked with the not-yet-official Platform Team, using just 50% of their capacity.
Team composition shifted weekly, depending on priorities.
At 30% completion, things got tricky.
We estimated two more quarters to finishâtoo long and too risky.
The project could be cut at any time.
I Refused to Burn Out the Team#
I didnât want to waste the effort already spent.
Every piece of tech debt we repay is a chance to build a stronger foundation.
But I wasnât going to sacrifice my teammatesâ health to do it.
This was my vision, not theirs.
So I asked myself:
If every frontend developer will benefit,
why not let them participate?
If people helped build it, theyâd also help sustain it.
I spoke with R, my manager, about product team availability.
We devised a new collaboration modelâlater the prototype for PlatformâProduct team work.
I acted as project owner and tech lead, managing code reviews and technical decisions.
Each week, I broke down work into well-scoped tasks, synchronized across teams, and aligned on staffing and delivery.
This sped up progress so much that R assigned more engineersâletting us finish the migration that same quarter.
More Resources = Finish Faster?#
If that were the end, it would be a happy story.
But when a manager adds resources, theyâre not saying:
âTake your time and do a great job.â
Theyâre thinking:
âHow can we do this faster and better?â
R checked in often about staffing and timelines.
I understood his pressure.
But I also wanted this project to grow our teammatesâ skillsâespecially in UI engineering and design collaboration.
Focusing only on the deadline would lose that chance.
Switching Gears#
When R asked again about the timeline, I told him Iâd bring a plan the next day.
That night, I shifted into project management mode.
From the companyâs perspective, the migration needed to be visible to upper managementâa functional requirement.
But the deeper valueâless decision fatigue, more consistencyâwas a non-functional requirement.
Could we split delivery into phases?
Looking into the CSS frameworkâs source, I found a workaround:
By moving certain components into the codebase, we could defer deeper refactoring to next quarterâwhile still showing visible improvements now.
It met the âimmediate resultsâ need and protected the teamâs health.
I adjusted the plan, got Râs approval, and realigned staffing.
We shipped the migration without overtime. (Whew.)
My First Fully Owned Large-Scale Project#
I managed shifting resources, strategic pivots, architectural decisions, and over 13 developers.
Weekly, I handled task planning, code reviews, and stakeholder updatesâworking closely with R to keep cross-team participation steady.
Toward Engineering Culture#
This wasnât just about performance.
It laid the groundwork for future service separation.
More importantly, it changed my thinking:
Why are we doing this?
How do we make sure our future selves are glad we did?
I started out fixing maintainability and performance.
I ended up learning that lasting change needs:
- Well-designed systems
- Strategic planning
- Flexible resource allocation
This brought me closer to the core of engineering management:
Building stability in a world of constant change.
The lessons were worth more than the output.
And the trust I earned became fuel for even bigger changes later.
At the time, I didnât know it.
But this was just the beginning.