(Got a startup question? Ask it at AskBob and I’ll take a stab at it. And if it’s a question that other startup founders are asking, look for it as a post here.)
Stuart in Australia asks:
I’m a developer who’s been working as an independent consultant for approx 10years now, but the last 6yrs have been with one main company. I’m the only developer they have (baring a few other contractors that we get when there is just too much work for me to do alone).
My problem is, that I’ve been working with a lot of different technologies – c#, some flash, web services, writing nullsoft installers, VistaDB, SQL Server, command line tools, NANT, SVN, admin line of business websites and the like – but I feel like the tech world has moved on without me.
I’ve loved this job and it pays well so it’s been very “comfortable” to stay put, but now I’m at a crossroads where I’m not sure if I should stay where I am and keep going or scale back my hours and start workinging on some startup ideas I have.
I guess I’m wondering what are your thoughts? Sorry for such a long questions. ps. love the startup podcast and your books! )
I know how you feel! About 6 years ago I was a .NET developer – (more a VB6/VBA developer truth to tell) and I saw the tech world moving from Desktop to the Web. What to do? Stick with what I knew, or embrace Web development?
What I decided to do is “go Web” by building my first commercial web app. It took a huge amount of time to develop skills in all the technologies that make up the Open Source stack, including:
- Linux (both as user and admin)
- HTTP and various other Internet protocols – the actual tech behind the page you see in a browser.
- Bash (command shell)
- Ruby on Rails
- Gems and [depreciated] plugins
- TDD (now rSpec, and various web test frameworks)
- prototype and then jQuery
- Switching from Windows to Mac.
If I were in your shoes, I’d suggest the following based on what I’ve learned, and the changes in the world, IT and work.
First, my assumptions.
- The technical/economic momentum today is web/mobile. In the last few months we’ve hit a crossover point: there are now more mobile devices than desktop computers.
- Having demonstrable technical skills in demand is always a good career move – and web/mobile developers are highly in demand worldwide, with the forecast more of the same.
- Leveraging what you do to advance several goals, not just one goal, is a huge power multiplier.
So given the above, here’s what I suggest:
2. Treat this as a project that you are going to put X hours into a week (much more effective if you do 1/5 of that time each workday, rather that spend say 4 hours in one day) Plan/research/Outline how you’re going to do to acquire this knowhow. I’d recommend as a starting place 1 book (jQuery Novice to Ninja, 2nd Ed.) and 1 video series (http://jquerystyle.com/screencasts – videos are excellent dev learning tools because you get a lot of context/perspective/best practices/everybody knows you do it this way instead of that information)
3. Once you start feeling comfortable with jQuery, start looking for opportunities to use in your .NET day job. That’s a win for you and for your employer.
4. Define and create a small, useful app – mobile if possible – where js is the primary technology. This is not a “startup” – don’t expect to make money with it. But do expect that by creating something of value to other people/developers you will be “rehabilitated” in the eyes of Open Source developers from your “evil empire” status.
5. Depending on what you build, you may find yourself getting sucked into Ruby on Rails/PHP/etc – beware of this! Learning multiple technologies is massively harder than learning one language/framework. You’re better off doing an all jQuery or jQuery/Node app than mixing in something that’s now the size of C++.
The above is doable, part-time, in say 6 months without too much stress, if you plan the learning, work the plan and keep a tight focus. Here’s what you get for that effort:
- You’ve jumped the chasm from .NET to Open Source – multiplying your dev value to your current employer, future employers, the number of other devs you know and your problem-solving toolbox and perspective.
- You can go for a raise, making the excellent case you’ve increased your value on your own time.
- You can start moving up the “developer food chain” from newbie to coder to commiter.
Hope this helps!
P.S. And thanks for listening to the the Startup Success Podcast!