Why I Made the Switch
I recently left a very large company where I held a stable, secure, well paying job working on an important (so I’m told) enterprise Java application. I left to join a very small company, where I have a less stable, less paying job working on world-changing (so I think) Rails projects. Many people have asked me why (especially my parents), so I’ll list some of the reasons here:
1. Ruby & Rails
As a Java lifer, learning Ruby was nothing short of mind-blowing. Rails, too, was eye opening for someone accustomed to the Java stack. Ruby and Rails immediately struck me as being both semantically clean and syntactically expressive – power and simplicity rolled into one. That was a very uncommon combination in my experience writing Java applications. It was also the first time I heard a community talk about “happiness†as a benefit of using the framework. I was productive in Java, but did it make me happy? No, it definitely didn’t. But here was this simple, powerful framework backed by an equally simple, powerful language and their users claim it makes them happy, and therefore more productive. I had to try it. So that’s how I got hooked, and while I can’t report that I’ve reached enlightenment (yet), I am definitely much happier focusing on the art of creation rather than the art of XML sewing and jar dumping.
2. Community
I’ve been keeping an eye on Rails since 1.0 and I am amazed at the level of innovation coming out of the community. ActiveRecord, migrations, named routes, RJS, RESTful-ness, Capistrano, etc etc. When I’m part of a community like that, it inspires me to want to be a better programmer and contribute back. On a more practical level, it also gives me more confidence in using the framework and recommending it to clients. I know current problems won’t be ignored and that another innovative solution is around the corner. It doesn’t matter how technically smart, the key to any open source movement is the passion of the community. And passion is definitely one thing not lacking here.
3. Meaning
This is a very personal reason, and I could fill a book on this topic alone, so I’ll try to summarize. I’ve always been a very spiritual person and I think we’re here to do more than accumulate wealth and reproduce. For me, the simplest way that I could see to make a positive impact on the world was at a startup with other like-minded people. The guys at Praexis immediately caught my eye as first class human beings with a high level of integrity and technical prowess. The corporate gig offered lots of vacation days, but those are only necessary when you’re not doing anything meaningful.
4. Flexibility
On so many levels, working for a small company offers more flexibility. Work experience: you get to wear many hats. Time: main thing is getting your stuff done, not that you’re in the office 9-5. Location: this is becoming less and less important. As long as you communicate effectively, you can work from the park, the coffee shop, or Africa. Financial: there are much better (and fairer) ways of being compensated than just salary.
5. Experience
One thing I love about the software industry (at least in America) is the tolerance of failure. If you participated in a failed startup, it is not a mark of death. Depending on how it failed, it could be actually a source of great pride. Of course, the experience of a successful startup is also quite helpful.
6. Excitement
There are certain jobs that are done best in large corporate settings. But most software development doesn’t fall into that category. A small, dedicated team can build powerful, world-shaking software. The excitement of being part of such a team, and partaking in such an endeavor is why I entered the industry in the first place. Don’t get me wrong; the thought of helping a large company make money is also exciting, especially if it results in a nice year-end bonus, and some rounds of golf with executives. But the potential ceiling for impact and financial reward is much higher in a small startup.
7. Risk
Tolerance for risk is one advantage of the unmarried. This is definitely a factor that individuals have to consider for themself. But for me, I couldn’t tolerate the risk of letting a great learning opportunity pass.
So there you have it, the reasons why I decided to make the great leap. Have you made a similar switch? I’d like to hear the reasons. If you haven’t but thought about it, what’s stopping you?

Older articles
Latest comments
Archives
Tweetstream