Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I currently work in technical support for a software/hardware company and for the most part it's a good job, but it's feeling more and more like I'm getting 'stuck' here. No raises in the 5 years I've been here, and lately there seems to be more hiring from the outside than promotion from within. The work I do is more technical than end-user support, as we deal primarily with our field technicians who have a little more technical skill than the general user base. As a result I get into much more technical support issues... often tracking down bugs in our software, finding performance bottlenecks in our database schema, etc.

The work I'm most proud of are the development projects I've come up with on my own, and worked on during lunch breaks and slow periods in Support. Over the years I've written a number of useful utilities for the company. Diagnostic type applications that several departments use and appreciate. These include apps that simulate our various hardware devices, log file analysis, time-saving utilities for our work processes, etc. My best projects have been the hardware simulation programs, which are the type of thing we probably wouldn't have put a full-time developer on had anyone thought to do it, but they've ended up being popular and useful enough to be used by development, QA, R&D, and Support. They allow us to interface our software with simulated hardware, rather than clutter up our work areas with bulky, hard to acquire equipment.

Since starting here my life has moved forward (married, kid, one more on the way), but it feels like my career has not. I still earn what I earned walking in the door my first day. Company budget is tight, bonuses have gone down, and no raises or cost of living / inflation adjustments either. As the sole source of income for my family I feel I need to do more, and I'd like to have a more active role in creating something at work, not just cleaning up other people's mistakes. I enjoy technical work, and I think development is the next logical step in my career. I'd like to bring some "legitimacy" to my part-time development work, and make myself a more skilled and valuable employee. Ultimately if this can help me better support my family, that would be ideal.

Can I make the jump to professional developer? I have an engineering degree, but no formal education in computer science. I write WinForms apps using the .NET framework, do some freelance web development, have volunteered to write software for a nonprofit, and have started experimenting with programming microcontrollers. I enjoy learning new things in the limited free time I have available. I think I have the aptitude to take on a development role, even in an 'apprentice' capacity if such an option is possible.

Have any of you moved into development like this? Do any of you developers have any advice or cautionary tales? Are there better career options I haven't thought of? I welcome any and all related comments and thank you in advance for posting them.

share|improve this question
7  
Have you talked to your manager about any of these feelings - about wanting to move into development? That might be a good place to start. –  FrustratedWithFormsDesigner Mar 2 '11 at 21:35
    
Yes, those discussions have begun at least, but haven't progressed very far yet due to schedule constraints, interruptions, etc (we're all busy). Improving my situation here is top priority –  Ben Mar 2 '11 at 22:02
3  
Becoming a professional developer is just about finding the job. Start looking! –  NickC Mar 2 '11 at 23:48
    
You should read the answer to this it kinda applies programmers.stackexchange.com/questions/25432/… –  Erin Mar 3 '11 at 2:41
    
Are you likely to get some official certification of your work in the development of these tools? –  apoorv020 Mar 3 '11 at 7:17
show 2 more comments

migrated from stackoverflow.com Mar 2 '11 at 21:48

This question came from our site for professional and enthusiast programmers.

closed as not constructive by Yannis Rizos Mar 7 '12 at 11:18

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

7 Answers

I say go for it!

From what youve said, it sounds like you're in a great spot to try and make the jump to being a professional developer. As far as most good development jobs are concerned, being able to actually write code that works is far more important than any laundry list of previous dev jobs or a degree in CS from a prestigious university. It would appear you've got plenty of experience writing code.

If you really want to go for it, start looking around and applying for dev jobs. If you find it doesn't work out, or your experience isn't as full as companies are looking for, you've still got your current job and you can continue to improve as a developer and try again later.

share|improve this answer
add comment

do it man, get your resume cleaned up and send it out - worst case, nobody replies. but I doubt that'll happen. good luck!

share|improve this answer
add comment

If you like your company and want to work in development, talk to management. If they want you around and to be happy, they will accommodate you (hopefully).

When I got similar feelings (mine were more "I'm bored and need to work on something more substantial"), I went out looking and the company was really only willing to talk after I made it known I was about to take a new offer.

Worst case? Update your resume, tailor it to looking for development, focus on your side-coding. I have known developers who came into the role from non-CS backgrounds. One of my ex-coworkers was an electrical engineer major, another was a physics major, another was a linguistics major. The company had to create a new role for her as they traditionally didn't hire super entry-level devs, as she was pursuing a master's in software engineering on the side.

As an interviewer, I am always open to talking to any candidate, regardless of their background. If they can prove their skills, drive, and are good people to be around, that is good for me.

share|improve this answer
5  
Warning. If you've reached the point where you are willing to leave and receive a counter-offer, don't accept it. It usually turns out really badly. The things you were unhappy about have not changed. They are usually paying you more than they want to. And whenever they find someone to replace you you'll find yourself out the door without another option lined up. –  btilly Mar 3 '11 at 2:21
    
@btilly - When I got to that point, I wasn't even going to bother thinking about staying. Two companies have tried to retain my services but I left them, and unfortunately, they lost a lot of knowledge in some specific domains as they allowed me to build up an ivory tower of knowledge. –  birryree Mar 3 '11 at 3:28
add comment

The work I'm most proud of are the development projects I've come up with on my own, and worked on during lunch breaks and slow periods in Support. Over the years I've written a number of useful utilities for the company. Diagnostic type applications that several departments use and appreciate. These include apps that simulate our various hardware devices, log file analysis, time-saving utilities for our work processes, etc.

You already are a professional developer.

share|improve this answer
22  
Underpaid professional developer. –  Jesse Millikan Mar 2 '11 at 22:50
5  
Sometimes it just takes a "leap of faith" to move on. If you haven't seen a raise in 5 years, then the company is comfortable with keeping you as you are. It's unlikely you'll move to where you want within the company. –  Bill Mar 2 '11 at 23:54
    
+1, same crossed my mind reading about all the achievements done. –  Jas Mar 2 '11 at 23:58
    
@Jesse - or overpaid support. –  Crazy Eddie Mar 3 '11 at 0:24
    
@CrazyEddie - or underpaid/under-appreciated support. –  wweicker Mar 3 '11 at 3:05
show 1 more comment

@Morons is right: You already are professional developer. Like others have said, if you can't get into a more development-centric role at your current company, you need to start looking outside. Otherwise who knows how long you'll continue to stagnate.

I taught myself to code while working a boring-ass administrative job that was completely unrelated to software development. (Long story short, I had a lot of free time and used that time to read programming books.) Anyways, my lack of professional development experience (and the fact that I only have a liberal arts degree) made it a little harder to break into the industry, so to speak, but I've fared pretty well. Sounds like you're already several steps ahead of where I was when I started out, so hopefully you'll be able to get where you want to be at a quicker pace. Good luck!

share|improve this answer
add comment

I was in that exact same position a few years ago. Just add some of the software specific experience to your Resume and apply for jobs. A lot of companies will take practical experience more seriously than study (overrated) and offer you a position :) Most importantly dont underestimate your ability to be a programmer just because of your current role ... one of the most important aspects of being a programmer is applying your skills to real problems, which you seem to be doing already :) Welcome to the team :)

share|improve this answer
add comment

If you've written apps that people are using, then you're a developer.

Getting the first "real" development job can be difficult, but it sounds like you've got solid experience you can point to and can use to answer the technical questions.

You should see if there are any local user groups you can attend. Talking to people there might give you some idea of what level your skills are at. You might even find a developer willing to give you a practice technical interview, so you can figure out what you might need to brush up on.

Then get out there and get an interview!

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.