As a child, Ryan was curious to a fault and often had to be warned not to take things apart. He decided to study Computer Science after realizing he was unofficially tutoring half of his dorm floor. A competitive runner in college, Ryan continues to remain active by enjoying Boulder’s hiking and biking scene. He also likes things that fly, like his pet cockatiel and hobby aircraft.

Ryan Foster, Developer

1. Where’d you get educated and/or what jobs led you to your new job at MojoTech?

I earned my BS in Computer Science from the University of Virginia. After school, I worked under the National Institutes of Health (NIH) developing Java systems and generally whetting my web development skill.

For the past 5 years, I’ve been consulting using Ruby on Rails and its matching ecosystem. It’s easily the happiest language I’ve ever used.

2. Before your life at MojoTech, what was the most interesting project you ever worked on?

I think the most interesting project I’ve tackled is the Chronicle of Higher Education’s Vitae. It’s really a very dense app with lots of features: social networking, journalistic content, jobs board, and applications. It was challenging and rewarding to grow a diverse product from scratch.

3. What do you enjoy most/least about engineering?

The thing I enjoy most about engineering, especially software development, is the chance for expression, like any profession to master. Past red green refactor, past the language itself, is the space to see yourself reflected in the code.

I probably most dislike the homogeneity of the software community. I believe it’s improving but we certainly haven’t arrived. My fear is we can end up in an echo chamber that assures we are the smartest, most clever keepers of the community. I hope the future is more and more inclusive of people and ideas.

4. What personal characteristics do you feel are necessary to be a successful engineer?

I suspect it’s some combination of curiosity and grit (See: Sandi Metz.) The stuff every kid is made of!

5. What do you get out of engineering that you couldn’t get from any other kind of work?

I think validation. Developing software takes precision. There’s a strong, objective (thanks, compiler) validation of each and every piece of work I create.

6. Describe a time when you confronted a problem that really tested your engineering know-how.

Building a gamified web application in the past really helped me flex some interesting architecture skills. I’ve come away with this: understand the currency (points, gil, MojoBUCKS) and rewards (currency, prizes, perks) of the system. Properly decoupling these make a much more flexible, forward-compatible system.

7. Now that you’re at MojoTech, what are you most excited about?

I’m looking forward to new sectors of client work and new engineering challenges.

8. Which professionals do you turn to or what blogs do you read for inspiration?

The Ruby community is inspiring. I admire the work and ideas of: José Valim, Sandi Metz, Aaron Patterson + Gorbypuff Thunderhorse, and Uncle Bob Martin.

9. You’ve been banished to a deserted island with—gasp—no wifi, but lots of power outlets. What one piece of technology would you bring?

Reason. “Ultima Ratio Regum.”

10. What technology is going to take over the world next?

Yavascript on asm.js is a good guess.

11. If you weren’t an engineer, what occupation would you choose?


12. What is your idea of happiness?

Staying one step ahead of comfort.

13. The red pill or the blue pill?