Cover image for From Chef to Programmer: Lessons From The Kitchen

From Chef to Programmer: Lessons From The Kitchen

jeremy profile image Jeremy Schuurmans Updated on ・4 min read

Before I fell in love with programming, I was a professional cook. I spent two years in culinary school, and worked in a lot of different restaurants, from dive bars to fine dining. Along the way, I learned some lessons that still guide how I approach my work. Though I'm nowhere close to perfect at any of them, I'm reminded of them when I program and see the scars on my hands and arms from the burns and cuts I collected. I want to share them with you.

Work harder than the person next to you

Most everyone who starts cooking professionally starts in the same place, the bottom. For most people, that's the salad station, known as garde manger, or pantry. In an industry as intensely competitive as restaurants, the only way to move up is by working as hard as you can. This means being willing to take on any assignment your chef gives you. It means constantly working to master your craft. Always striving to be better than you were the day before, always learning, always growing. It can be hard sometimes to find that drive within yourself. It's easy to get comfortable on the station you've been working for several months or a year, and it can be terrifying to do something different. The best way that I know to combat that and push yourself to work harder, go further, and grow faster is to look at the person next to you and try to work harder than they do. Whether you're a junior dev, or a bootcamp student who just finished writing a "Hello World" program, or even someone with years of experience, there is no secret to becoming the programmer you want to be. It takes work. Programming is a craft like any other, and the only way to master a craft is to work at it all the time.

Find a way to love what you do

I learned early on in my cooking career that I was never going to be a head chef. I didn't want to admit it for a long time, but in my gut, I knew it was true. The reason for this is simple, I didn't love cooking. I enjoyed it, sure, but I worked alongside people who lived and breathed to cook and I could sense that they had something I didn't. I saw their passion for their craft push them through incredible obstacles. They were the ones who were seemingly blessed with inspiration from the gods of gastronomy. They always had better ideas, better product, and better technique, because they loved it to the point that they were always working to be better. They read about cooking, practiced their skills, leveled up, cooked outside of work, and as a result they were just better. If you're going to code, if this is your career path, then go all the way. Read as much as you can about programming. Practice your technique by doing code challenges and exercises, and build side projects. Love what you do. The familiar saying "love what you do and it'll never feel like work" is false. At least for most of us. But if you love what you do, you'll love the work regardless. It'll help you keep moving forward when you're tempted to quit.

Show up

Opportunity comes to the people who are there when it arrives. You have to show up. To me, this means two things. The first is don't be lazy. If you don't feel like working on a project, work on it anyway. Every day, I talk to a dozen people who are hungry to make it as developers. I'm one of them. If you've already made it, recognize how lucky you are and make the most of it. The second is don't be afraid. If you don't think you can build a project, build it anyway. If you don't think you can write a blog post, write it anyway. Don't let yourself get caught in the trap of thinking that you can't do something because you don't know how, or you're not qualified. Show up, do it anyway, and you'll be surprised at how much you're capable of. You never know what opportunities you might miss out on if you don't try.

Be organized

The best kitchens are obsessed with organization. Mise en place. Everything in its place. The most common piece of advice I've heard for cooks who were in the weeds, aside from cook faster, was to stop, take a breath, and wipe down your station. When your work area is clean, and your tools are where they should be, your mind is better able to handle complex problems. For a cook, that could be preparing ten different dishes simultaneously. You know what that looks like for a programmer. Our minds need to be clear to debug that problem that has us totally lost, and a good first step is to organize your space, whether that's your physical desktop, your computer desktop, the directories and files in your application, or even your life. Being organized leads to better success.

Plan your work. The best cooks never have to ask what to do next. They have a solid plan of action, written down, that they execute step by step. I have seen so many people fall on their faces because they didn't have a plan (I was often one of them) and so many others kill it because they always had a plan. Plan your day. Write out your projects in pseudocode before you start programming. Sometimes there's no way to get where you want to go without a map.

Never stop learning and teach when you can

Cooking is a lifelong pursuit. Even the best never stop learning new things, and that's one of the reasons why they're the best. Programming is no different. There's always something new to learn. So absorb as much as you can, and help out the next person in line. We owe it to everybody who helped us learn to help the people who are where we once were. It's not just a nice thing to do, we learn more by teaching than we ever could by studying. And anyway, the world seems like it needs more nice people right about now. Might as well be us.

Posted on by:

jeremy profile

Jeremy Schuurmans


I love writing clean, simple code, and writing about code. I love building things that make people smile. I like computers, Ruby, people, music, and books.


Editor guide

Great post Jeremy! I was a chef after high school for over a decade and so much of what you write about resonates with me. I wrote a piece last year based around my decision to leave the kitchen and return to my original love of programming. Reading your story has reminded that I need to write a follow up! Thanks 👌


I just finished reading that, and I really connected with your experience. Definitely looking forward to a follow-up!


I appreciate the article, as a fellow nontraditional programmer; a lot of good stuff here.

I would offer a bit of caution with Passion Is The Differential. I like programming a lot, but I’m not all that passionate about it. I got into the field because it is secure and lucrative, which I think is the primary reason why a lot of us switch careers to it. For those that are passionate about it, and can spend a lot of their own time working on OSS, developing tutorials, etc. I applaud you and I’m even a little envious. That said, if you were simply putting in your 40 and making an effort to modestly improve your skills every day, there is no shame in that.

I think being more pragmatic approach to the concept would be Grit Is The Differential. As you aptly pointed out, there are going to be days where the going is tough and you have to simply do it. Getting stuck, troubleshooting bugs all day, and the endless frustration of mismatched APIs is part of the gig. This job, like any other job, is going to have days where it sucks. Part of being successful in this field, IME, is having the tenacity to push through.



I think that's a really excellent point, and I'm glad you brought that up. I can only ever write about my own experience, and so when I wrote that I was thinking of my own feeling that if I loved cooking more, I would have felt more motivated improve, thus becoming successful. But just because my own lack of passion was a de-motivator, doesn't mean that I wouldn't have been able to find another source of motivation. The same holds true for anyone.

I don't think that being absolutely in love with a job is a prerequisite for anybody. I think that if someone wants to program for a living, they should do it, regardless of whether or not they live and breathe code. Even passion doesn't make up for being scrappy and working hard.

I've been searching for something I love and am good at my entire life. I feel lucky that I've found it in programming, but I don't want anyone to think that they would be somehow unable to be great at programming because they lack passion for it. All I'm pointing out is that I've noticed that the most successful people I've seen tend to have a passion for their work. But I'm limited by my own experience because that's all I can write about.

All our stories are different, and we are on our own journeys.


Certainly, and your experience is as relevant as mine. I mention it because I think there can be this “over-exhuberance” in our field. “Passion” becomes code for “working long hours and weekends”, which I feel can contribute to the stigma and ageism that is already plaguing the industry.


Glad to know I am not the only one who has followed this path. I've felt the same things as you, just never put it down before. About the only thing I use my culinary skills for now is make my family restaurant-quality dinners, and teach my kids how to get around the kitchen.


I never comment on stories, but felt compelled to do so here. The article is well written and your advice is spot on. I personally think passion is the most important element. Passion drives you to work hard, show up and learn as much as possible. Your passion for programming shows through the article. Thanks for sharing


Thank you for writing this article. I enjoy cooking at home as a hobby and I think your comparisons are on point. I love your point, "We owe it to everybody who helped us learn...". It really makes a difference helping others.

I think something to go along with "Be Organized" is "use the right tool for the job". Sure you could chop an onion using a butter knife, but there are other tools for the job that will make it a helluva lot easier. The same thing can be applied in practice with programming. This could be adding another tool to your tool-belt that will assist you such as add-ons or extensions, or it could be switching to an entirely different IDE. If you do your research and talk to others in the field, you may learn that there are better ways to tackle the everyday problems you encounter.


That's a great point! Thank you


Great post Jeremy!

You're right, we need to just do it. Stop thinking about it and find our way in, on and around any problems that try to stop us.
I still have both feet in the food service world right now, working my way through Flatiron part-time. Every time I get stuck on a problem and it damages my motivation, my foodservice job is there to haunt me. I need people like you to get me to work harder and go all in. Thanks for the motivation and positivity!


Hello, I googled chef to programmer, and this came up :) I was a corporate chef for the last 11 years at a large software company near Madison, but now I am going to school for web development. I felt exactly the same as you described about the profession, I didn't LOVE it, I knew I could never be a head chef, and I was surrounded by people who were more passionate about it. I'm in my second semester now, but I'm wondering if i can find a way to be truly passionate about work in this field.

Great article, thank you for your perspective!


I can only speak from my own experience. I currently work for a small software company in Madison, and I'm truly passionate about the work we do. Give it a shot. You never know until you try.


So far I really like ui/ux, do you think there is enough of a market for that around here?


Thanks for sharing this! I've always admired chefs' ability to keep their station clean and organized while serving dinner rush. I share that obsession and it's very much reflected on the software tools I choose to use and how I organize them. Great post!


Thanks, everybody. Writing is fun as it is, but when it connects with people, it's the greatest feeling in the world. I was going off of a hunch that because tech and cooking are two insanely competitive industries, the same principles for success could apply to both. I am both happy and relieved that I was on to something.


I love this -- awesome, awesome advice. I feel like the second to last paragraph says everything that I stand for 100x better than I could say it! Thanks for writing this.


I am really humbled and grateful for the positive response this thing of mine has gotten over the past three months. Based on that response, and without rewriting the whole thing, I do want to clarify some things for the good of the community, and whoever might read this in the future.

By 'work harder than the person next to you', I am not advocating for any kind of unhealthy work environment or lifestyle that involves working long hours, weekends, or giving no room for self-care.

What I am advocating is the idea that programming is a craft in the same way that cooking is, and that being a successful programmer isn't just about your job title or salary, but proficiency at your craft, and the best, if not only way to gain proficiency is to work hard at it.

So by 'work harder than the person next to you', I'm talking about a healthy concept of competition where a person who is striving for mastery of their craft motivates themselves by trying to work harder at it then the person next to them, who, in kitchens, is often better at it.

I am by no means saying that engineering teams should function like professional kitchens. The toxic environment of the kitchen was one of the reasons I decided to move from cooking to programming. But there are principles of success I took with me and find applicable.

But it's what I find applicable. I'm not saying this is the one and only way to be a successful programmer. I'm hoping it helps me and anybody who thinks like me to be better, but there is more than one way to program, more than one way to work, more than one way to be successful.


Hey Jeremy

Just wanted to say as a recent bootcamp grad and a former chef this post is spot on. I have shared it with friends and it has inspired two other beyond myself brave the career change waters. I can't stress enough how much the lesson I learned in the kitchen have helped me in my journey into development and I know when I land a job the interpersonal skills and work ethic my years in the BOH instilled in me will prove to be priceless. Thanks for the post!


I guess, I need to clean my room now!


Ha, thought this article was about Chef and was ready to tell everyone why it sucks...instead it actually turned out to be about a chef.