For those of you who don't know me (and I'm guessing that's most of you), I'm a partner in a software company. I think we're over the hump of starting a business now, being over 7 years into things now. And while staying afloat isn't a concern, I feel we are starting to experience some growing pains. Or rather, I am starting to experience them.
I've always been a programmer, and it's really where my passion lies. Over the years, my role has changed from being just a programmer to our lead developer, and I enjoy the challenges that designing our software has provided. Now I find myself on the brink of another transition, and I'm not sure it's one I'm wanting or ready for.
More and more I find myself not only designing our software, but large parts of our corporate infrastructure, and frequently find myself out working with various IT departments and discussing technical issues with prospective clients. I feel like I'm ending up as more of a CTO than a developer, and I don't think it's what I want. I want to program and not deal with the other crap.
I realize that in a small company, an owner/partner needs to be able to wear multiple hats. But the extra stuff is not just getting in the way of my passion, but the overall development effort. Right now, in addition to all the programming I'm supposed to be doing, I'm maintaining company web and e-mail services, the company network, the phone system, all of our web products, and one of our tax products. I'm lucky if I spend a full day of each week writing new code. This week, for example, I'm going to have to investigate phone systems to replace our presently-dying PBX. This will leave me with less than a week to implement and debug a module that we promised to a client by the end of next week.
Frankly, I don't enjoy being out working with existing and prospective clients. I don't want to be responsible for the company infrasctucture. But there's no one else here that can. The frequent interruptions and hassles incurred by non-programming issues are causing me huge amounts of stress and, unfortunately, some rather severe anger management issues.
There are two options as I see them: 1) Suggest we find the money to hire another developer and embrace the set of duties I seem to be moving into, then code for fun on nights and weekends to satisfy my programming urges, or 2) find someone that has the skillset to manage all aspects of our corporate infrastructure so that I can deal with the development issues. The problem I see with #2 however is still lacking someone to meet with and schmooze potential and existing clients.
Has anyone else found themselves in my position? What did you do? What would you do differently if you could go back? What would you do in my shoes?
Yes, I have been in that position...
Curiously enough, by the time they finally gave me a contract (I didn't
have one by then), which meant less money, they also asked me to try harder,
to do more things
I don't mind working, but in this case... I felt like I should have been rewarded for my work (as everybody else did)...
What I would have done differently if I could go back? Maybe I wouldn't work so hard...
What they should have done? They should have recognized my work
What I've done? The first thing was to work less... or better yet, work more! Now I'm spending more time doing the things I was hired to do then those other things that should be done by someone else!
Unfortunately, they don't seem to understand that and keep giving me more to
do and less to spend, so...
I don't know what I could have done better, given how hard I tried to explain them the situation, but I hope everything turns out ok for you