The Three Step Process I Used to Become a Software Engineer

Generation Veeva
Veeva
Published in
3 min readApr 2, 2024

By Ben Merrick, Software Engineer, EDP Alumni

Try, Fail, Learn.

That’s it…seriously. No clickbait, no tricks. Those are the three words, the three steps that I have unknowingly used throughout my career journey to become the Software Engineer I am today here at Veeva Systems.

Growing up, I loved the world of tech. I was fascinated by the latest devices, apps, websites, you name it. Even though I knew nothing about anything, I always wanted to know how these things worked. I would toy with spare electronics around the house, taking apart tech I had no idea how to put back together just to see what made these little machines function. I knew that one day I would want to pursue my interests in tech and somehow make a career out of it, but I had no idea where to begin. So I began Step #1…Try.

My high school had an engineering track, which I dove head first into as soon as I could. I was tinkering with robots, building potato guns, programming python games, doing my best to try out every single corner of the engineering tech world that existed. I later headed to college with the same mindset where I began to focus my “trying” more on the disciplines of Software / Computer Engineering. Through terrible experiences in Physics and Calculus (foreshadowing for Step #2), I eventually came to the realization that the software-side was more my speed. I continued on with my education, honing my learning efforts in the realm of Computer Science. I loved it so much that I decided to apply for software roles full time after college. Soon after, I came across Veeva’s Engineering Development Program, gave it a shot with the application, passed the interviews, and haven’t looked back since.

Let’s stop here, rewind a little, and switch gears to Step #2…Fail.

The above paragraph was about the ultimate success I had in discerning my career and finding my way to becoming a Software Engineer. But what I don’t have the time to include in this post is the encyclopedia-set length of personal failures that I encountered at almost every step of my “trying” efforts.

I realized pretty early on that with everything I tried, I was guaranteed to fail first before making any form of progress. I had a few projects that turned into dumpster fires, tests/quizzes that didn’t end up so well (sorry Mom and Dad), and it definitely took me way longer than I am willing to admit to print “Hello World” in my first C program. Failure was inevitable, and it became pretty discouraging as I started to think that despite my love for the field, maybe a career in the world of tech wasn’t for me.

But this is where the final piece to the puzzle, Step #3, comes into play…Learn.

My Dad always taught me that the definition of insanity was doing the same thing over and over again and expecting different results. So with each failure I had, I did everything in my power to make sure I wasn’t going to make the same mistake twice. I spent hours learning from what I did wrong and piecing the broken pieces back together so next time around, I was one step closer to my goals and success. Slowly but surely, I found what worked for me and what didn’t. I began to learn from my mistakes, leading me closer and closer to the software role I am in today.

Even now at Veeva, I use those same three steps on a daily basis. With Veeva being on the forefront of the Life Sciences Software industry, there is a whole new world of leading technologies and practices engineers are exposed to that provide us with the opportunities to Try, Fail, and Learn. We all know bugs and mishaps are inevitable… but all that matters is you learn from your mistakes and keep pushing forward with your new knowledge at every step. It never is easy, but that is part of the fun. So whether you are just starting out or knee deep in your journey…good luck and don’t forget to Try, Fail, Learn.

The views and opinions expressed in this article are those of the author and do not necessarily reflect the official policy or position of Veeva.

--

--