Meet the 50 Team: Lead Software Engineer Steve Dorazio

Pin on PinterestShare on LinkedInShare on Google+Tweet about this on TwitterShare on FacebookEmail this to someoneShare on StumbleUpon

interview-sdorazio-1

Welcome to our Meet the 50 Team feature. This is where we get the lowdown on how the people at 50onRed get stuff done. This time we’re sitting down with Lead Software Engineer for our RTX Platform, Steve Dorazio.

What’s your role at 50onRed?

I’m the lead Software Engineer for RTX. Prior to that, I was a Software Engineer on Traffic Platform.

Day to day, I work on a wide variety of problems and features across our system. One day I may be working on a new feature in the Traffic Platform dashboard, while the next I’m working on our daemon code, which handles close to 50,000 requests per second.

One of my favorite aspects of this job is the variety of challenges I face each day. Sometimes they’re easy, like a small bug in the dashboard interface, and other times we’re looking at server CPU and memory issues. There never seems to be dull moment working at 50onRed.

How’d you discover 50onRed?

I was referred to 50onRed by one of my friends, who’s a technical recruiter in the Philadelphia area.

At first, I was a little hesitant to even take the interview. I had never worked at a small company before, and I didn’t know what to expect. But after some thought, I realized some of the most frustrating parts of my previous jobs dealt with the corporate overhead.

The interview process itself was probably the hardest one I’ve ever been through. For several hours, I went through various coding projects as I met with nearly every developer on the team. I was impressed with the skills each person demonstrated as we talked through various solutions. It seemed like everyone could hold their own. After that, I knew this was the place for me.

interview-sdorazio-3

What’s the most exciting project you’ve worked on at 50onRed?

So far, there have been a ton of really interesting projects. If I had to pick one, it would have to be what I am currently working on, which is a table framework we’re implementing inside the Traffic Platform dashboard. Presenting tabular information in a web application is a common problem. There are tons of libraries and frameworks out there, but they all seem to try to fit everything into the same mold with very little room for customization or additional features.

Our goal when beginning this project was to come out with a framework that could be applied to any of our applications. We looked at the pros and cons of some existing frameworks, what technologies we have, and what features we needed to support. After a few prototypes, we settled on a design that works not only with our current features, but also with features we haven’t even thought of yet.

It’s easy to design something for what you already know, but to take it a step further and plan for the future is what separates a good design from a great one.

What was the first project you ever coded?

One of my first and most memorable projects was a Java applet version of Super Mario Bros. that I wrote in my senior year of high school. It was a fun project since I’ve always been into video games, and to take what I had learned and apply it to something I loved was great. The game itself was extremely basic, but it gave me a chance to work with animation, collision detection, and artificial intelligence. Even though it was one of the first projects I ever coded, it was definitely one of the most memorable ones. The code was ugly and the gameplay made NES look like PlayStation 4, but I was still proud of what I had accomplished at such a young age.

What is your favorite and least favorite programming language, and why?

Right now, my favorite programming language is Python. I have a ton of experience with Java, but I’ve really taken an appreciation for Python’s flexibility, speed, and ease of development. Some of the largest systems I’ve worked with written in Java could probably be re-written in Python with about ⅓ of the code and ½ the development time.

My least favorite programming language is one that I am trying to learn right now, which is Objective-C (what iOS is written in). I don’t have as many problems with the architecture of the language, but the syntax is pretty hideous compared to most. It also has some annoying quirks, like boolean values are “Yes” or “No” instead of “True” or “False” like almost every other programming language. I’ve learned a few different programming languages over the years, but Objective-C seems to be one of the hardest ones to pick up, mostly due to its syntax. I was ecstatic to hear Apple’s announcement of the Swift programming language. It seems to be a much more developer-friendly language with a lot of traits similar to Python.

Do you have any mentors at 50onRed? What have they taught you?

I have a lot of mentors at 50onRed, ranging in a wide area of expertise. One of the best aspects of my job is that I get to work with such a great team. I learn so much from everyone on my team that it’s hard to just pick one. One day I’ll learn a JavaScript Design Pattern from Matt Parke or a CSS trick from Bernie Zang, and the next day I’ll pick up a Python trick from Craig Slusher or Rob Harrigan. All of the developers here work really well together, and it’s amazing to see how much you learn from such a strong team.

interview-sdorazio-4

You presented your Fantasy Football app in our company ‘Show and Tell’. How’d you get inspired to create your app and how’s it been doing with Fantasy Football season in full swing?

I’ve always been a sports fan, and I absolutely love Fantasy Football. I end up in three to five leagues every year, with one or two being my main focus. Most of my leagues are offline drafts where we use a board to track each person’s teams. Initially, I was writing an app to replace the board, but as I started looking at what I could do with the information, I realized that there was so much more potential.

I decided to change my app up a bit and use it as a draft tool. Most people show up at our drafts with a cheat sheet of players and simply cross off the names as they’re drafted. Once I started showing up with my tablet and my app, Draft Tracker Pro, everyone took notice.

I seemed pretty confident using it, but in reality I was just hoping there weren’t any bugs that could really mess things up mid-draft. After the first few rounds (with a few drinks along the way), I relaxed a bit and just used it like any other user would. That year, I ended up coming in third place in that league, but I’d like to think I would’ve done even better if it weren’t for some unfortunate injuries to some of my players.

2014 was my fourth year working on Draft Tracker Pro. Last year was the first time I released it, and it did fairly well. This year, I completely re-wrote the entire thing to work with a back-end server I wrote in Python using Flask. It allowed me to do so much more and deliver more great features, like Twitter integration.

Right now, I have just under 2,000 users across Google Play and the Amazon App Store, but I believe I could triple that number next year once I have an iOS version.

interview-sdorazio-2

Do you have any advice for developers seeking a position in a tech startup?

It seems like everyone asks “How is the company doing?” when looking at a position at a startup. Yes, it’s important to work with a stable company, but don’t get too caught up on where the company is now. Instead, focus on where the company is going, and how you can help them get there.

Want to learn more about 50onRed and see what opportunities we currently have available? Head on over to our Careers page to find out!