Kitchen Renovation: An Engineer's Insight Beyond Coding

Helping junior software engineers navigate their careers by sharing lessons from my journey—avoiding pitfalls, learning from mistakes, and building a strong foundation for success in tech.
You are a Software Engineer, with “engineer” in the back. Have you ever thought about what that word means? I spent the last month and a half working on a big project: kitchen extension in my new house!! Instead of giving it all to somebody, I managed it all myself and hired a senior constructor worker for a month. What I learned changed how I see being an “engineer”, it’s similar to what we do in software.
What does “engineer” actually mean?
Writing code is just a small essence of software engineering, what it truly lies is in applying a systematic and disciplined approach to solve problems and create appropriate solutions.
Problem identification
Start by identifying the goal of the project. Usually, it comes as a problem statement and brief background.Research the background
Proactively research the problem given to you and possible solutions from similar problems.Requirement specification
Prioritize and list the most important point for the project, one project with another will be different even if it is similar.Brainstorm the solution
Think of all the alternatives. Don’t just focus on one solution, a risk overlooking a better solution.Develop the solution
Communicate the solution properly to the executor. Have proper control to be able to meet the plan.Test and revise
Be ready to revise your solution once it has been developed. In some cases, you don’t have the privilege anymore to restart everything from point zero.Result communicated
Set up a demo, presentation, report, or display to others. Pretty sure, as a project owner, you are working on this project on behalf of someone else.

My Kitchen Renovation Project: an unexpected engineering masterclass
As the project owner of my kitchen renovation, where I report directly to the stakeholder (my family: wife, kids), I found myself relying heavily on the very same principles I use daily as a software engineer:
Problem identification
My family and I meticulously thought about our needs for the new kitchen space. We also discussed some of the characteristics like the flow of usage, aesthetic, budget, and deadline.Research the background
I personally spent hours on kitchen layout and design trends on pinterest, materials on local depository, kitchen appliances on shopee.Requirement specification
Since I could not copy paste what I have seen on pinterest, I began listing down some requirements that need to be finished given the problem we have set.Brainstorm the solution
Almost for every item, I come up with some alternatives. The layout for example, deciding on L shape or C shape comes with pros and cons. As well as choosing ceramic over granite, and others.Develop the solution
I hired one senior construction worker and a junior helping him. I communicate my plan in a language we all understand. They also gave feedback when my plan needed more effort or was uncommon, so we all can still achieve the project within the budget and deadline.Test and revise
No matter how perfect your design is, the execution could go wrong unexpectedly. That’s when you need to revise your design and come up with another solution.Result communicated
For my case, I invite my family over about weekly or biweekly to check the progress. I presented the progress we have reached so far.
The Universal Discipline of Engineering
My experience working on the kitchen extension project showed me that being an “engineer” is like having a special way to solve problems, any problems. It does not matter if you are writing code or building a kitchen ceiling: you still need to know the problem is, plan all the way, do the work, and finally check if it is right.
Shaping Your Career and Personal Growth
Understanding this universal definition can be incredibly empowering you personally and most importantly your career!
Enhanced Problem Solving
You will have a structured thinking on identifying the problem, proposing the solution, up to work on it effectively.Improved Communication
The planning session will help you to articulate your thought process and invite a healthy discussion with all stakeholders. You also get a chance to collaborate with individuals from different backgrounds and different intentions, focusing on the shared language.Increased Adaptability
You will come to realize that a perfect plan will break eventually, by applying your engineering mindset for a dynamic situation makes you more versatile.Personal Empowerment
By recognizing your inherent problem solving, it boosts your confidence to tackle challenges beyond coding.
Conclusion
The last kitchen extension project really showed something for me: I'm an engineer, not just a software engineer. Seeing how my problem-solving skills translated so well, and with my family happy with the result (and me too!), it inspired us for other future projects like building a kitchen cabinet, carport, and even handling electricity and AC installation.
Of course, as a professional Software Engineer, I need to carefully balance the time I dedicate to these personal projects with the crucial effort of honing my core software engineering skills. :(
Anyway! Have you ever found your “engineering brain” kicking in outside of your domain realm? Share your experiences in the comment below! What unexpected projects or situations have you approached?




