views:

217

answers:

6

My passion is creating software mostly iPhone or Web and what I've done since graduating( 2 years ago ) has mostly been IT work, which I find boring. I've left a fortune 10 company( about a month ago ) to work for a smaller IT shop so that I would have more time to work on my own stuff. My logic is that as long as I get to work on my own projects that I find interesting I will eventually be able to do this kind of stuff as a career.

Is this realistic thinking ? Has anyone been through the same thing I'm going through?
What do I need to do to eventually work on projects that you're interested in and enjoy working on?

+3  A: 

Yes, it's very realistic.

Essentially, you can have stability by working for a large company, but you incur the cost of dealing with the inertia of the company; it's frequently hard to work on precisely what you want in those situations, and frequently, the technology is a generation or two behind. Or you can work for a smaller company; they tend to be more dynamic, more agile, more involved with the latest technology; but, as a tradeoff, they tend to be less stable.

The key, though, is that you have more self-direction with a smaller company, because as an individual, you make up a larger percentage of their workforce; individual efforts and contributions mean more just because there are fewer people. And in those situations, where you get to choose what technologies you want to work with, you can make a career doing more precisely what you want (at least, more frequently than at large corporations). And, if by being a directing force at a company using newer and more exciting technologies, maybe you can rise up the ranks with your expertise, when the company becomes a larger than small company (assuming that it does, see comments about stability and risk above). And then you can force new guys like you were to use the technology that was cutting-edge that you're an expert in!

McWafflestix
You're right, at small companies you can choose the language, the classes, the modules, the logics... it's hard to do all the development and testing process by yourself, but more freedom involves more responsability :)
yelinna
+2  A: 

You should start your own business.

However, this is easier said than done. First you need a good concept of what you're going to do and how you're going to make money (what is your added value compared to those millions of other software firms). You can for example concentrate on quality, or concentrate on a good price or concentrate on delivery time (never concentrate on more than one, then you're doomed to fail).

Then start thinking about a market. Who will be your future customers, how are you going to attract them, etc etc.

If you like idea of being an independent entrepreneur, then that is your way of doing things you like for a living.

If you don't feel like being an entrepreneur, then you should just do the stuff you like as a hobby and do the stuff you like less as a job.

Henri
You've got to be kidding me. You must live in a world where you don't need things like money, to pay for rent and some such.
McWafflestix
@McWafflestix: And, yet, people do succeed in starting new companies, despite having to have living quarters and food. It isn't easy, it isn't guaranteed, and it definitely isn't for everybody, but some people do very well at it. You should see the sailboat my company founder owns.
David Thornley
@DavidThornley: I'm not saying people don't do it; I'm not saying it's not a good thing to do; I AM saying that by presenting the whole issue without any caveats or understanding of the potential downsides, you're providing only one side of a story, and that's just silly. Not everybody has the means to start a company on their own and put the time and money in to make it work; and not everybody has the inclination or nature to take the risk on something so dear to them. To wit; why is the sailboat the boat of your company founder and not your own?
McWafflestix
@McWafflestix: I'd say that many more people could start a company than actually do. Usually, it isn't a matter of not being able, but of not wanting to, or not being the entrepeneural type. My company founder did nothing I couldn't have done, if I were a completely different sort of person.
David Thornley
@DavidThornley: I'm not saying more people can't start their own business. I just think that if you're going to use phrases like "you should start your own business", you should also point out that 80% of all small businesses fail within the first 5 years. I'm all for small businesses; I think they're very important. I just think that by recommending starting a small business and focusing on the practical difficulty, you're potentially misleading the OP by not pointing out the potential pitfalls as well.
McWafflestix
I wouldn't recommend the same order Henri presented. Pick a market first! You'll want something you are passionate about so you'll stay interested. If you don't already know the market, get to know it, and figure out what the market is missing software-wise. It could be better support, cheaper software, etc. Create your software around those needs and you shouldn't have any problems earning money with it.
Kevin
I think you sould try to do what you like to do in your spare time, and see if you can handle it, and if you can turn all your work into something usable and possible profitable. If you have wife and kids to feed, analyze very well the possibility of starting your own business - but if you're young, can have parents support for a few more years and can risk it, it may be your last chance. (Or you can just be a freelancer)
GmonC
@above, I didnt say it was easy. I didnt said you should stop working and start your own business overnight. But you should start doing work in the weekend and once you got your first customers, you can go work 4 days for a boss and work 1/2/3 days for your own. And if everything goes well you can decrease the number of days you work for you boss and increase the number of days you work for yourself.I didn't say or mean that it was risk less. But thats the big difference between an entrepreneur and a technician. An entrepreneur makes a decision when he _has_ to not necessarily when he can.
Henri
+4  A: 

Essentially, the only was to guarantee that you'll only work on stuff you find exciting is to become an indie developer, either as a contractor who's picky over what they work on or as a micro ISV.

This can be tough if you have to, you know, feed yourself. If you have a full-time job and your contract allows it (some say all code written at any time belongs to the company while you work for them), you could start slowly working on your own stuff in your spare time. You could even slowly transition over to contracting (even back to the company you're currently working for at the beginning) then from there slowly transition into being a micro ISV.

Problem: It's hard. If you're really willing to take a risk it's really worth it once you get there, but it's a challenge.

Check out these posts by Gus Mueller and Daniel Jalkut for hands-on info.

iKenndac
Depending on where you're working, contracting for your ex-employer can be tricky business. In the UK, there's a law called IR35 which the tax people are likely to try and invoke to show that you're still working for them, and should be treated as salaried staff. If you've got more than one contract, and particularly if the company is actually contracting a different company which you're employed by, then things get easier. But I'm not an accountant (what with this being stackoverflow, not hugewadsofcashoverflow).
Graham Lee
What I'm hoping is that I could possibly start a micro ISV while I'm at my current employer. My current employer doesn't mind if I do projects outside of work. I potentially could spend 30 hours a week on my own stuff.
TheGambler
30 hours a week is a lot of 'spare' time!
iKenndac
A: 

You might want to check more thoroughly on who owns whatever you do off-clock. As a general rule, do nothing personal on company equipment and try not even to think about your project on company time. Check on what you signed, and consult a lawyer if you're in doubt. Don't rely on what your manager tells you verbally.

That being said, you can either quit and start your own business, which is something most of us aren't going to want to do, or do other development on the side. Have fun!

David Thornley
A: 

This is completely unrealistic if your company is mainly focused in iPhone apps. The appstore is basically a lottery system and it would not be a good idea to bet your career in it.

erotsppa
Maybe not, but at the same time I'm learning Cocoa and Objective C and I'm thinking those might become more and more valuable skill-sets in the future.
TheGambler
+1  A: 

You should have no trouble finding a job that's both "IT" and "Web." I think most CIOs have successfully convinced themselves that everything needs to be web-based, because the web architecture is centralized, much like mainframes were.

As for the iPhone, I think more and more business types will start asking for IT to make crap to run there as well. Decision-makers (and even deciders) seem especially to like such things, which bodes well for its corporate adoption. The bigger the paycheck, the smaller the computer, right?

So, you can improve things within the broad field of "IT," although you still might not find the results sufficiently exciting. I did internal software development for 7 or 8 years right out of college and eventually walked away from it with an overwhelming sense of pointlessness. Eventually I reached the point where I was working with the tools I liked best back then (ASP and ASP.NET), but it still wasn't good enough for me. Just about every request that crossed my desk seemed to practically beg for a whiteboard, a legal pad, or perhaps even a to-the-point phone conversation (as opposed to a software project).

If you feel that way, then the best advice I can give you is to learn a language, tool, or architecture which is perceived as difficult and/or outmoded.

You could learn Ada, for example; you won't win any points with the hipsters down at the coffee shop, but you'll get the opportunity to work on important real-time stuff running in buildings those guys aren't even allowed to photograph.

Even C++ has become distasteful to most; learn C++ and you probably won't have to work on anyone's (for example) drag-and-drop Silverlight vacation scheduler. You'll be too busy doing Other, More Important Work (tm).

I had a (pretty damn good) C# programmer say something to me recently along the lines of "you can just go ahead and display that number [for debugging] in hexadecimal, since that's so much easier in C++." Of course that's BS (C++ can display numbers in any common base with ease) but I didn't set the guy straight. Let them think C++ is an intolerable briar patch...