This post originally appeared in July 2015.
Perhaps a bit unusually, Randall Reed had already been a developer for years before he applied to Flatiron School’s Ruby class in 2014. During his job at Fast Enterprises, Randall provided tax software for government agencies all around the world. He worked in Boise, ID, Port of Spain, Trinidad, and eventually wound up in Atlanta, GA, where he sensed the need for a change. That’s when he decided to apply to Flatiron School, packed up all his belongings, and moved to New York to embark on a different path. Soon thereafter, Randall started work at a medical startup called MedText.
What got you interested in Flatiron?
At the time, I was working as a developer at a technology software company in Georgia. It was a good company, but I had been there at that point for about four and half years and I just felt like I wasn’t growing anymore. The company used visual basic .NET programming languages that had its heyday in the ’90s when they were building the company. It made sense to use it then, but I feel like it’s a little outdated now. I wanted to refresh my skill set and use more modern languages and technology.
I also visited New York for the first time when I was 14. I ended up falling in love with the city — it was very romanticized. From then on, the next 14 years, I always thought about coming here. It just made sense. I thought, ‘I’ll apply and see what happens.’
Since you already knew other coding languages, how did you apply that knowledge when it came to learning new ones?
Some things are similar. The syntax is going to be different, but a lot of the logical structures are the same. You have
while loops and you have
else structures in every language, so those building blocks are always the same. But it’s less about what you learn from other languages and more about how you learn to structure logical things. Ruby is interesting because there are so many high level iterators. I was trained in C++ — it’s what I did all through college — and the way that you would solve a problem in C++ is to maintain the state. With Ruby, there are more efficient ways to do that.
What is your favorite coding language to work with?
It’s Ruby now. One of the quotes about Ruby, is that it was designed to make developers happy, and I have found that’s true. It’s a pleasure to work with, the gifts that Ruby gives you.
What about your least favorite?
One of the languages that I know is probably Java because it’s very verbose, the opposite of Ruby. Comparing printing output is a very common exercise when you’re learning a new language is printing, “Hello World!” If you compare the code required in Ruby to print “Hello World!” it’s literally one line. if you compare it in Java, it’s a huge mess of code.
You’ve been a developer for quite some time, where do you see yourself going next?
I think that I really like managing engineers, and I really like helping direct technology adoption and finding tools to address the needs on a technology team. But it’s hard from going to being a developer in a company that I’ve been at for a long time, really really knowing the software and being very comfortable, and then going into web development where there’s still so many things that I don’t know about web programming. I’d like to be director of engineering or a VP or CTO (Chief Technology Officer), but that seems very assuming of me.
You’ve traveled a lot and lived in many different places. Is there anything you learned throughout your travels that helped you with code?
When I was 19, I studied abroad in Paris, France one summer in college. One of our first nights there, a group of us decided to head to the Eiffel Tower. We get there and I’m looking around, admiring the views and taking pictures. After a little while, I realize I don’t see any people from my group. No one on either of the top two floors. Panic begins to set in, that same feeling like when you were a kid at the mall and can’t find your parents. I take the elevator down to the landing, no one. I walk down the stairs back to the ground, no one. I waited for a while, not wanting to abandon them in the event that somehow I had missed them, but it started getting late to the point where if I didn’t head back to the metro to catch the last train, I’d be stranded. Finally I headed to the station, and navigated all the way back to the hotel myself. I felt like I had conquered the world.
That night gave me a lot of confidence in my own self-reliance, and surviving in unknown and frightening situations. I feel like solving a programming problem can be the same. You need to trust that, no matter how tough the going or how lost you feel, if you keep your wits about you, you will find the solution. Stay calm and trust yourself. You don’t need to know the entire path to the solution, just take the next step you can see.
What would you say to people who are just starting out as professional developers?
When you’re starting out in programming and you get that first job, it’s easy to feel like maybe you’ve made a mistake — I think that’s normal. You have to learn how your company works, their coding style, and that takes time. In my personal experience, a lot of the time it takes about six months to get to a point where you can work autonomously. Up until the first year, it’s really still a learning phase. That’s normal, and you shouldn’t be worried about it.
What advice would you give to someone who is interested in a career as a developer?
I think if people are looking at programming like a way to move from a bad job or to get good pay, that’s not a reason to do it. If you like problem solving, you like puzzles, you like logic, learning programming makes sense and it’s a rewarding path. Before you commit to something, try to do some research. Try to learn these things on your own, and make sure you feel fulfilled while you’re doing it.