×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: Advancing a Programming Career?

Soulskill posted more than 2 years ago | from the new-day-new-challenge dept.

Programming 165

AuMatar writes "I've been a professional programmer for 10 years. The startup I work for was recently bought, and while I was offered a full-time job, I opted to accept only a six-month contract. At my most recent job, I was lead developer for a platform that shipped tens of millions of units, leading a team that spanned up to three geographical areas I've done everything from maintenance to brand new apps. About the only thing I haven't done is been lead architect on a large system. What else is there to look for in the next job so it won't just feel like the same challenges all over again? I'm not interested in starting my own company, so I'm looking for suggestions assuming I'll be working for someone else."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

165 comments

Own Company or Game Designing (4, Interesting)

antitithenai (2552442) | more than 2 years ago | (#38690104)

While you say you're not interested in starting own company, why is that? Since you've been lead developer and are looking for further challenges, there really isn't much where you can go. Either you have to switch your area of work, go to management (which also switches your area of work) or start your own company.

Having your company is definitely interesting and provides new interesting challenges. You also have much more personal feel to your work. At times it can be exhausting, but it's also really rewarding - but to yourself, and of course to your wallet. I wouldn't do anything else than running my own company at this point. It is definitely much more interesting than working for someone else.

Apart from that, what is your line of work? Maybe switch to more interesting part of the industry. Game development can be fun too, if you're just done some other kind of software programming. However, I would really suggest you look into game designing and not programming. The latter is crunch work that can be done by almost anyone and in the long run extremely annoying. Designing is fun.

Re:Own Company or Game Designing (5, Insightful)

Anonymous Coward | more than 2 years ago | (#38690668)

I would really suggest you look into game designing and not programming. The latter is crunch work that can be done by almost anyone and in the long run extremely annoying. Designing is fun.

I did games for 17 years and I disagree with that statement.
There are parts of game development that can be done by almost anyone, and those parts suck. Things like shitty game AI and front ends. Things that don;t take any insight, just hours of monkey work.
Then there are the parts that separate out the chaff, the low level optimization and driver stuff. I did the latter for almost all of my career and it was a blast. Every five years or so a new generation of hardware comes down the pipe and you get to wrap your head around a whole new set of problems building on the knowledge and experiences of before. Going form the old 8 bit stuff all the way to current consoles has been a hell of a ride.
As for game designers, I've only worked with a couple that weren't idiots. The biggest problem I had with them is their inability to think about their decisions ahead of time and require the devs to actually build the bad ideas before understanding how awful their decisions actually were. The good designers were a blessing to work with. They had a clear vision and an understanding on how to get there. The projects with good designers you build once. The projects with poor designers get built two or three times on the way to final and are usually poorer for the effort.

If you think you could be a good game designer then GO FOR IT! The industry needs you.

Re:Own Company or Game Designing (3, Interesting)

Ihmhi (1206036) | more than 2 years ago | (#38691424)

Regarding this topic, I'd love to know why so many game companies get it into their heads to code their own engines.

However much they want to do it, there's an engine out there that they can license and it will do almost anything. The Unreal engine is, what, like $200,000 K? That's 3-5 programmers for a year right there (and there's no way they can make something halfway decent in that time unless they're really skilled and command a high enough salary which defeats the purpose.)

With all of the prefabricated software we have nowadays (the only term I could think of that fits), it should be a matter of assembling all of the pieces and then doing the artwork, UI, unique AI elements, etc.

Re:Own Company or Game Designing (4, Insightful)

Anrego (830717) | more than 2 years ago | (#38690888)

I can sympathize with not wanting to start your own company.

Marketing, accounting, networking, hell just coming up with an idea all things I very much detest. Being a wage slave sucks in a lot of ways but at the same time: you show up, do the thing you love (for the most part) and get paid enough to be happy. You don’t have to worry about how it makes money or where the next project is coming from... that’s someone else’s job.

If you can partner up with a guy who has the same passion for wearing suits and working in power point as you do for cranking out killer code... then maybe it would be alright.. but having to deal with all that stuff yourself (in addition to actually writing the software) sounds like a nightmare to me at least.

Obviously some people enjoy the whole package.. but we don’t all have that entrepreneurial drive, and I think going that route just to get more interesting coding projects is a bad move.

Re:Own Company or Game Designing (4, Insightful)

timeOday (582209) | more than 2 years ago | (#38691224)

If you can partner up with a guy who has the same passion for wearing suits and working in power point as you do for cranking out killer code... then maybe it would be alright...

I think that would inevitably wind up a Steve Jobs / Steve Wozniak situation - in the best case, if the endeavor were really successful, he would gradually leave you in the dust and replace you. Whoever manages the money and touches it first has all the leverage. Might as well work for a larger company with more stability. (Granted Wozniak never had to work again, but Apple's level of success is unusual to say the least).

Re:Own Company or Game Designing (2)

Ihmhi (1206036) | more than 2 years ago | (#38691438)

Wozniak was the creative guy who enjoyed engineering stuff.

Jobs was the business mind, the one who handled all of the numbers, contracts, etc.

This kind of relationship isn't all that insane. It *can* work very well - let the creative guy make stuff, let the business guy sell it. Now if only they would filter this method down to entire companies. R&D is pretty much in the shitter at most major companies nowadays.

Re:Own Company or Game Designing (2)

maple_shaft (1046302) | more than 2 years ago | (#38691026)

Game development is great if you like working 80+ hours per week and getting paid half of what your friends are making writing uninspiring business apps. Do yourself a favor and make sure that you REALLY like doing this sort of thing, and I mean having a serious passion for it, or else you will either not make it or you will be miserable.

To hell with game development, because I work to live, not live to work.

Re:Own Company or Game Designing (0)

darronb (217897) | more than 2 years ago | (#38691042)

Last I checked, pay in the game industry was very low for the talent required. Given that so many want to do it, I can't imagine that's changed much.

Recommending the game industry to someone who isn't seeking it out in the first place is just wrong. It's simply not worth it unless you REALLY REALLY want to be there.

IT is a saturated market. (4, Informative)

Anonymous Coward | more than 2 years ago | (#38691324)

While you say you're not interested in starting own company, why is that?

I can give a few reasons why you wouldn't want to.

For one software is extremely saturated - talent, businesses, products - you name it.

Sales. Starting a business is easy. Watch: There I just started a business. Here I'll start another one. Bam! Two businesses in as many seconds.

Sales. It's extremely difficult as someone who has been behind a computer all his career to get the sales. If you think it''s just a matter of cold calling, walking into a building, or placing an ad in CIO magazine; you will be quickly disillusioned.

You will be competing with established businesses. A couple of years ago, folks were suggesting that one should get into the web page and marketing business because the companies they were working for were experiencing increasing sales. Of course they were. Try walking in as a startup and convincing someone that they should drop the guy that they have been doing business with for the last several years (and most likely pleased with them) and hire you. Try, just try to convince them. Do it cheaper? Never compete on price because there's always someone who'll do it cheaper. Anytime on RAC will show one that.

Your own portfolio? It's a start - if you can get a chance to actually show someone who has the power to hire and pay you. And that's assuming your design and coding skills are so awesome that the potential client will fall in love with you. There aren't too many people like that in the World. .

It's much more than hard work. If all it took was hard work, everyone would be successful in their business. And here's the killer: when you're in business for yourself, you will spend most of your time getting work. So you will not only have to meet your deadline for your project, but work in getting sales - going out to networking events, shows, taking "decision makers" out to lunch.

Then there's the collections. Do you think at the end of 30 days, said company is just going send a check right over? Pfft.

Industry: IT is a saturated industry. If your business has anything to do web design, custom software development, support, or anything sun of the mill like that - good luck! Folks like that are a dime a dozen. And they're all not screw ups.

Re:IT is a saturated market. (3, Interesting)

Homr Zodyssey (905161) | more than 2 years ago | (#38691600)

This varies by geography. In my town, we can't find enough developers. Headhunters are trying to contact me daily. My last three clients were all hungry for new programmers.

And no, people who actually do the work well are not a dime a dozen. H1b, offshore and otherwise useless wannabes are.

Re:IT is a saturated market. (1)

Anrego (830717) | more than 2 years ago | (#38691776)

Anytime on RAC will show one that.

Oh man.. nailed that one on the head.

I remember back when RAC was ok-ish. You'd get not what you were worth, but enough that it was worth it for a student (and beat flipping burgers).

Then you started seeing the insanely low bids. I had a great rating on the site.. so I could still get _some_ business for a decent rate.. but when you bid $500 and someone bids $10 (not hyperbole.. that happened a lot) .. you are pretty much screwed.

And of course the $10 guy did really shitty work, so all the legit buyers left and the site became a slave labour clearing house for people needing "100 articles for my ad riddled new website" or "1000 blog comments pushing my scam".

And that was years ago.. I don't even want to think about what it has devolved to now (assuming it is even still around).

Re:Own Company or Game Designing (1)

Homr Zodyssey (905161) | more than 2 years ago | (#38691448)

Consulting. You can do it through a consulting firm if you don't want to be your own boss. You can make damn good money at it -- especially if you can specialize in one of the big-name platforms like SAP, Axapta, Rockwell, or Great Plains. I'm currently doing this through a firm, so I don't have to find the work. I get benefits, and I have clients in completely different industries month to month.

Natural Transition (4, Informative)

rwven (663186) | more than 2 years ago | (#38690174)

A natural transition for programmers can be "Enterprise Architect" roles. This will still allow you a modicum of programming, and you get to be at a slightly higher paygrade, with pseudo-managerial powers. If you're decent at your job already, this gives you more of a top-down on the process so you can truly shape a project rather than simply build the shape someone else has given to it.

Just my $0.02.

Re:Natural Transition (3, Insightful)

Anonymous Coward | more than 2 years ago | (#38691084)

The problem with this is that the role of an Enterprise Architect varies wildly from role to role. In some organizations it is exactly as you describe. In some organizations it is mostly a political favor handed down to somebody connected. In others the Architects are a miserable cesspool of the most stodgy ivory tower types that come up with terrible ideas that amount to mental masturbation and whip up convuluted half-completed prototypes that only vaguely demonstrate the original idea they came up with, then handing over that unfinished and likely technically impossible to implement prototype to a group of developers to turn into a product.

Re:Natural Transition (1)

Homr Zodyssey (905161) | more than 2 years ago | (#38691542)

The problem with this is that the role of an Enterprise Architect varies wildly from role to role. In some organizations it is exactly as you describe. In some organizations it is mostly a political favor handed down to somebody connected. In others the Architects are a miserable cesspool of the most stodgy ivory tower types that come up with terrible ideas that amount to mental masturbation and whip up convuluted half-completed prototypes that only vaguely demonstrate the original idea they came up with, then handing over that unfinished and likely technically impossible to implement prototype to a group of developers to turn into a product.

I totally agree with AC.

Re:Natural Transition (0)

Anonymous Coward | more than 2 years ago | (#38691162)

Actually he should go into politics, look at what those brain-dead idiots are coming up with, SOPA WTF?? If that's not enough of a challenge, well, I don't know what is.

Train yourself first (1)

Brain-Fu (1274756) | more than 2 years ago | (#38691616)

If you are moving to an enterprise architect role, read up on modern industry practices/tools first. Don't assume that your development experience alone qualifies you as an EA. The experience is an absolute prerequesite, but it is not enough. The mistakes you can make as an EA can cause a lot of pain to a lot of people for a long time, so those lessons are ones you really can't afford to learn the hard way.

Also, if you are looking for something different, you could also consider staying as a regular developer but target an entirely different domain. Have you done hardware controllers? If so, interested in trying desktop apps or web apps instead? Just food for thought.

Dilbert (3, Insightful)

Aighearach (97333) | more than 2 years ago | (#38690192)

If you're not interested in starting a "business" and being a consultant, your choices are basically Dilbert or PHB.

How do you feel about Lumberjacks? (5, Insightful)

RingDev (879105) | more than 2 years ago | (#38690438)

Every developer hits that point eventually. And your choices aren't necesarily limited. Assuming you're ok with a pay cut.

There are plenty of opportunities to move in the direction or Project/IT management. That's the direction I've gone. 15 years of seeing poorly run projects and trying to get them back on track has left me pretty well practiced for taking the reigns.

Switching over to the networking side of the house isn't a bad option either. There's some learning involved, and you're not going to start out as a senior architect, but you can get work with the ancilary skills you've developed.

All industries can benefit from exceptionally bright solution developers. Look into 6-Sigma training and advance your career into process improvement.

And if all else fails, get out of the office. Find yourself a lumbar jack gig, maybe come camp counciling in the summer, park maintenance in the Everglades, etc....

-Rick

Re:How do you feel about Lumberjacks? (2)

Aighearach (97333) | more than 2 years ago | (#38690496)

There are plenty of opportunities to move in the direction or Project/IT management.

I knew somebody was going to recommend PHB.

Re:How do you feel about Lumberjacks? (3, Insightful)

gstoddart (321705) | more than 2 years ago | (#38691010)

I knew somebody was going to recommend PHB.

You jest, but companies do require those skillsets.

I spend over a decade primarily as a coder. Since then I've been out in the consulting industry.

The last project I was working on made me really see the value of a good PM, and made me realize it's a skillset I need to flesh out a little. The majority of PMs I've see area hinderance to getting the job done ... but on an enterprise-wide roll out of a software upgrade, consisting of a lot of environments, and a lot of machines (and manpower involved), having a PM who could actually steer the project, get it done on time and on budget, and actually accomplish the goals ... well, let me say he was the first PM to truly gain my respect.

He knew that it was his job to clear the path so that me and the other people on the ground could get our job done, and he had a genuine plan as to how we'd build it. The end result was a successful project, happy clients, and a reference project that made the people who signed off on the money feel they'd received value for money. Literally, the best PM I've ever worked with.

By the time you're talking about projects with really huge scales and timelines on the order of a year or so ... the skillset is absolutely necessary. And if you have someone who has done this stuff for real, they tend to better understand what's involved (which is why the managers I've had who used to code are better than the ones who have only ever been managers).

Nobody says you need to be a PHB, but there's nothing wrong with competent people moving into management -- they can at least bring some experience and insight to the role.

Re:How do you feel about Lumberjacks? (1)

Homr Zodyssey (905161) | more than 2 years ago | (#38691650)

I agree that PMs are a vital part of any large project. However, I think it's not a logical step to go from programming to project management. They are two completely different skill-sets.

I'm may be just a little bitter, though. We just narrowly avoided failure on a project because a programmer tried to take up the PM role and failed miserably.

Re:How do you feel about Lumberjacks? (-1)

Anonymous Coward | more than 2 years ago | (#38690508)

"has left me pretty well practiced for taking the reigns."

...but unable to spell "reins".

Re:How do you feel about Lumberjacks? (2)

Genda (560240) | more than 2 years ago | (#38690618)

You missed the subtle suggestion of overtaking a kingdom. Yes, taking the "reigns", then installing your own puppet ministry. Its all going according to program! Bwuhahahahaahh!!!!

Re:How do you feel about Lumberjacks? (1)

iggymanz (596061) | more than 2 years ago | (#38690846)

"He cuts down trees, he skips and jumps, he likes to press wild flowers. He puts on women's clothing and hangs around in..... bars?! "

Re:How do you feel about Lumberjacks? (5, Funny)

rubycodez (864176) | more than 2 years ago | (#38690882)

Dear Sir,

I wish to complain on the strongest possible terms about the previous entry in this webpage about the lumberjack who wears womens' clothes. Some of my best friends are lumberjacks, and only a few of them are transvestites.

Yours faithfully,


Brigadier Sir Charles Arthur Strong (Mrs.)

Re:How do you feel about Lumberjacks? (1)

Pope (17780) | more than 2 years ago | (#38691736)

And if all else fails, get out of the office. Find yourself a lumbar jack gig

Massage therapists are very much needed by geeks with lower back problems!

Re:Dilbert (1)

jellomizer (103300) | more than 2 years ago | (#38690914)

Keep in mind Dilbert and the PHB are stereotypes used to make a form of entertainment well... entertaining. Going into management doesn't mean you will not use a computer again or never code. But you will be challenge yourself with new problems, when you go to management level you really see things with a different perspective. You see you are making decisions that you would have thought would be idiotic, make more sense as you see more trade-offs you need to make.
For example. You may make a decision that all new code should be done in C#.net even though you know the advantages of all the other programs and you know .NET combines the slow speed of Java with the Platform independence of just making it in C++, however you see when trying to find new developers most of them have C# on their resume so it makes it easier for you to hire new people to maintain the projects. Or having to go to your team and tell them that their program is Good enough to be released, even though you know there are still rough edges. But on the brighter side you are also more involved in the decision making process, you really can be part of the creative process on making the application and you can get your way, and push for what you learned to be a good thing.

Consultants are not as evil, as Unions who feel threatened by them make them out to be. For the most part their motivation is to get the work done, so they will be hired again, as well empower the people working at the location so they end up looking good.

Re:Dilbert (0)

Anonymous Coward | more than 2 years ago | (#38690958)

There are always Dogbert, Catbert, Ratbert and last but not least Wally.

Figure out what you like (4, Interesting)

PCM2 (4486) | more than 2 years ago | (#38690248)

Are you interested in anything besides programming? Maybe head that direction. I don't mean stop programming and do something else, I mean find a job where your programming skills will be contributing toward something worthwhile and that you're interested in. That might mean working on software to help find new cures for deadly diseases, or it might mean being a lead programmer for the NFL. Whatever floats your boat. If you're a part of a team that's doing something that you genuinely like and that enriches your own life, maybe it you'll be less concerned about "the same old challenges" and you'll be happy just to contribute toward the end goal.

Re:Figure out what you like (1)

aix tom (902140) | more than 2 years ago | (#38690842)

That would be my preferred choice also. At the moment I'm at a fun but somewhat dead-end job (About one third development, one third administration and one third figuring out what the hell people actually want). I enjoy doing it, but when I have paid off some loans in 5-6 years I will probably have a look for something new.

Basically two options I have started to look into:

- Switch Industries.
So far I have worked in manufacturing companies and retail companies. Perhaps I will try to get into something more technological / scientific. I have started to network a little with people from a aerospace research facility to see if there are any options for a garden variety geek there.

- Switch location
Another option would be to try to go to some-place new. I'm taking a few language lessons already to give me some options there.

But I *definetely* know I don't want to do anything management related. I like fixing technical problems, so that is where I will stay work-wise.

Re:Figure out what you like (2)

Anrego (830717) | more than 2 years ago | (#38690990)

I totally agree, and this is heavily overlooked.

Very few jobs are pure programming .. software is rarely written for the sake of software, it's almost always programming + . A lot of people don't factor that in.. figuring if they are doing cool c++, the reason probably doesn't matter.

Personally I think that part adds a lot of interest to a job and when you get to a point where you can be a little choosier about your job (vice out of school when you get the first job that gives you the time of day) it would seem sensible to aim in an area you enjoy.

Re:Figure out what you like (3, Insightful)

Anrego (830717) | more than 2 years ago | (#38691024)

fack..

* it's almost always programming + <some industry>

* Personally I think that <some industry> part adds a lot of interest

Slashdot feature suggestion: yes we get that we have a forced preview.. but we are lazy. Maybe check what's between the < and > and if it isn't something that makes sense.. warn the user!

Hmmmm (0)

Anonymous Coward | more than 2 years ago | (#38690254)

I was a developer for nine years. Moved into management for a different company five years ago. Now I oversee software development, project management, network support and a few other odds and ends. It's been an interesting career path and not one I think I can reduce to a seven step program for you...

Teach (4, Insightful)

Anonymous Coward | more than 2 years ago | (#38690272)

I would look around for the opportunity to break in to the education field. There is no field more challenging and the real life experience you would bring to the classroom would be invaluable to the students.

Re:Teach (2)

The Mighty Buzzard (878441) | more than 2 years ago | (#38690570)

Yes but you already stated the main problem with that idea, the students. They're worse than users. Plus the pay flat sucks in comparison to the private sector for someone with serious skills.

Re:Teach (1)

i.r.id10t (595143) | more than 2 years ago | (#38690918)

But there are always a few students each semester that make you really glad you were teaching...

And, the hours are typically flexible enough (a FT instructor here at the college I work for has to be on campus about 25 hours a week) that having your own consulting gig on the side to make some extra $ is very possible.

Not to mention (still) good state health and retirement benefits, extra pay for working summers (or the whole summer off), etc.

Re:Teach (1)

flaming error (1041742) | more than 2 years ago | (#38691064)

> the students. They're worse than users.

Far be it from me to say there are no stupid users or students.

But isn't it possible, that given different teachers and apps, some students and users might be more successful?

Blaming the problem on the peons whilst ignoring the conditions we forced them into is a really trite meme. Let's try wearing their shoes before dissing their limp.

Systems Engineer (0)

Anonymous Coward | more than 2 years ago | (#38690286)

http://news.cnet.com/8301-17852_3-10468165-71.html [cnet.com] Best job in America.

If you're wondering what jobs were beaten out by the joys of system engineering, well, second came physician assistant. Have you seen how much money these people make? Quite astounding. In third place was college professor. Yes, really. Followed by nurse practitioner, IT project manager, and--breathe now, breathe--CPA.

If you don't already have the formal qualifications, you are well equipped to get them. Go for it!

"Programmer" verses "Problem Solver/Value Adder" (2)

porsche911 (64841) | more than 2 years ago | (#38690328)

If you continue to present yourself as a "programmer" you will continue to get programming assignments. What sort of projects are you good at? What types of problems can you solve? Think of yourself as a business instead of as an 'employee'. The old "You Weren't Meant to Have A Boss" mindset (see: http://www.paulgraham.com/boss.html ).

Get out there and do something cool, don't sit around waiting for someone to tell you what to do!

Plenty of Options (0, Redundant)

Anonymous Coward | more than 2 years ago | (#38690330)

As you seem to have plenty of experience and deep skills, go indie. Be a company of one, or have your own team. Consult on a specific piece of a project, then move on. You'll (typically) get a higher paycheck with time off in between projects for other interests, family, writing a book, building new skills, or teaching. Contract out the parts you don't like, such as administration.

Try Freelance commission work (0, Redundant)

Anonymous Coward | more than 2 years ago | (#38690364)

Offer your services for a price. See who offers you a nibble. If you find it interesting, great, if not, just make sure your offering is for consideration not commitment.

Re:Try Freelance commission work (4, Insightful)

PCM2 (4486) | more than 2 years ago | (#38690600)

The only problem I see with freelancing is that he specifically says he wants to advance his career. When you're a freelancer, people tend to want to hire you to do the thing you did last time. It's just the nature of the beast; you're probably going to get a lot of jobs by word of mouth, and the word of mouth is going to be "when we needed that same thing, we hired this guy -- you should hire him, too." Also, people tend to underestimate the amount of hustle it takes to be a freelancer. You're always thinking about your next job, which means you tend to be reluctant to turn down paying work. These two factors make it very easy to fall into a rut.

Blown out of the water (0)

Anonymous Coward | more than 2 years ago | (#38691528)

You're always thinking about your next job, which means you tend to be reluctant to turn down paying work. These two factors make it very easy to fall into a rut.

And get blown out of the water.

Yes! Been there!

In the mid to late 90s, I did C++ middleware and UIs for RDMs on servers and mainframes. That's all I was hired for and never got the opportunity to do anything else - no matter how hard I pursued those jobs. Then Java and the internet took off and work disappeared. Even though I took Java classes until I was blue in the face and wrote code on the side, I was forever dubbed "that C++ middleware guy".

Maintenance? I don't think anything I wrote is in production anymore. I think it was all replaced with Java Beans and a few other products.

Tried getting other work in embedded systems and other things and it never came to pass.

Once you're pigeon holed, it seems impossible to get out. I wish I never contracted. The money was awesome for a couple of years, though and I can say that I used to make six figures back when it meant something.

If you still enjoy it... (3, Insightful)

s_p_oneil (795792) | more than 2 years ago | (#38690378)

IMO it's not so much about advancing a career as it is about finding new things to learn (the learning is the fun part). If you still enjoy it, I would recommend looking for something that requires different languages, tools, skill-sets, etc. so you can continue learning and keeping it fun.

If you're tired of it, then go for management or a lateral movement. Some have mentioned an architect role, but there are also positions like product and/or project management, technical lead for a sales team, etc.

Roll the dice, then. (0)

Anonymous Coward | more than 2 years ago | (#38690394)

If you don't want to retire, work for yourself or start a company, then isn't your only remaining career choice to do as you are told?

That's the employment deal. If I hire you, you do what I tell you, and I pay you.

If you're lucky, the things I tell you to do will be the things I thought I'd be telling you to do when I hired you.

If you're unlucky, conditions have changed so I'm going to be telling you to do something else.

Re:Roll the dice, then. (3, Insightful)

fatmonkeyboy (257833) | more than 2 years ago | (#38690626)

Just because you are working for someone doesn't mean you are their bitch. Someone with marketable skills will move on to something else if you treat them poorly. Good luck keeping your company going when all of your employees are the kinds of people that don't have any better options.

Porn (-1)

Anonymous Coward | more than 2 years ago | (#38690408)

Or a new industry in general.

Re:Porn (0)

Anonymous Coward | more than 2 years ago | (#38690572)

Maybe you missed this part:

I've been a professional programmer for 10 years

so porn star is probably out of the question.

Unless perhaps you meant watching porn, but if you were paid for that I'd guess most nerds would already be multi-millionaires and not looking for career advice.

Job Satisfaction (3, Interesting)

Anonymous Coward | more than 2 years ago | (#38690426)

I've been a professional programmer for 30 years. I've been everything from a grunt to a lead developer and have had some products wind up on millions of PCs and watched many millions of dollars be blown by incompetent executives on others. If you're dead set on working for someone else and you're in a position to do due diligence on a company, its executives, its history, and its current financial situation before accepting an offer, then do it. However, don't be surprised if you ultimately burn out on trusting employers to provide the satisfaction that you derive from writing software and start thinking about starting your own company to obtain that satisfaction. If I could give advice to myself 20 years ago, it would've been to start thinking about starting my own company a lot earlier.

Similar Situation (4, Interesting)

jomama717 (779243) | more than 2 years ago | (#38690428)

I've been a developer for about the same amount of time as you and am now a tech lead/team lead, where "tech lead" means I'm the go-to guy for the organization on anything to do with my particular product (new design/architecture, integrations, major issues, what have you), and "team lead" means I act as the manager of all of the developers/testers under me (reviews, layoffs, vacation approval, all that crap).

I'm coming to the realization that I kind of hate this role...I can only put myself down for 5-10 hours a week of actual development, and even that is usually a stretch, and the management stuff is quite stressful. It is shocking how differently people behave when you go from their peer to their manager. So, I find myself in a similar situation, what do I do now? I am the best developer available to work on my product, yet I am unable to find any time to actually code...all I can do is quickly spec things out as best I can, pass them to my team (also spread around the world) and get back to fire control/integration meetings/budget planning/etc. It's extremely frustrating.

My thoughts wander from 1) Just suck it up, dive into the management aspect, do as much coding as I can on the side to scratch that itch (it is my true love), 2) Find another job that is purely technical - lead dev/architect, what have you (would probably lead to the same situation I'm in), or 3) Say f**k it and go totally off the reservation - try to start something on my own, or become a teacher and work on stuff on the side or something, complicating this option is the small matter of a family to feed... I just don't know.

Re:Similar Situation (5, Insightful)

wmelnick (411371) | more than 2 years ago | (#38690822)

Here is the problem you are about to face... Next time you work under someone, you are going to second-guess everything they do. What you need to do it to ask your company to send you for management training, my guess is that based on how you phrased things you have never had any. After that you need to take the time to figure out how to explain to your subordinates how you want something done and let them do it. You may think you are the best person to do something, but if you can teach 5 or 10 (or more) people to do it the same way, that makes you far more valuable to the company and will get a you a larger paycheck as well. You just need to figure out how to do it all in a way that does not stress you to the point of snapping and eventually it will become easy and natural. All that being said there is nothing to stop you from trying to teach the occasional night class at a local college.

Re:Similar Situation (1)

jomama717 (779243) | more than 2 years ago | (#38690938)

Sage advice, thank you. Your assumption with respect to management training is correct, in spite of me continually asking for it for the past two years.

Re:Similar Situation (2, Insightful)

Anonymous Coward | more than 2 years ago | (#38690978)

You're on the way (or may I say Highway to Hell) to fulfill the prophecy of the Peter Principle: "In a hierarchy every employee tends to rise to his level of incompetence" (look it up if you don't know about this yet). You're almost already there—either you get in the habit to really like managment (and become proficient in this) or you try some means to get a job you like. In the same company (which is hard, because going back to programming looks like degradation) or you have to look for another employment in programming, not management.

Re:Similar Situation (1)

jomama717 (779243) | more than 2 years ago | (#38691188)

If I could mod you insightful I would, that all sounds about right. Never heard of the principal, but I can definitely see the truth in it.

Re:Similar Situation (0)

Anonymous Coward | more than 2 years ago | (#38690994)

Sounds to me like you love programming and want to remain a programmer... so why do you need to advance? If you're happy as a programmer and don't want to move into management then stay a programmer! Tell them no when they offer you the promotion.

 

Re:Similar Situation (1)

jomama717 (779243) | more than 2 years ago | (#38691124)

It's interesting, it was never really put before me in that way - to be honest it's hard to trace back to how I ended up in this position. People leave, there are big shakeups, massive layoffs - all of which lead to frantic phone calls with you, your boss, and your boss's boss "asking you" to pick up some of the slack "until we can backfill those positions". Next thing you know, you're a manager. Or a developer with a large cylindrical shaft suddenly where it shouldn't be, depending how you look at it.

There are some aspects of it I really do enjoy (not the shaft part, heh) - running a small development team (with good, motivated people on it) is a real joy most of the time, but for whatever reason that is not a stable situation at my company - once you're there they just start throwing more crap at you.

Re:Similar Situation (1)

Genda (560240) | more than 2 years ago | (#38691184)

You know, the nerd amongst us are really the worst communicating bunch of people on the planet (except for everyone else :-) We don't deal with getting our hearts broke or our asses kicked very well because of childhood trauma for being different. So we put up with virtually infinite discomfort that ultimately demands we either go dead inside or commit some for of professional seppuku. So here are some dots placed CLOSE TOGETHER for you to follow.

1. Tell your management what you want. Explain to them where your biggest contribution to them are. Let them know that you appreciate the fact they have a plan. let them know that you want to empower their success and that requires using you most efficiently. Frame the conversation to their benefit, while explaining why you need what you need.

2. If you manage other people, Let them know that you are their champion, you're here to make their lives work. You are not their Father, you aren't there either to throw a couple in the backyard (though having fun it totally part of the gameplan), and you're not there to whip their hinnie if they behave poorly (though shitty performance beget a shitty review.) They are here to be party to building something, and your are here to point the way, conduct, and celebrate the accomplishments of your team members. Have them actually use you to grow themselves in a way that's important to them. Then treat them with infinite respect and dignity even when you feel like kicking them in the groin

3. Start your own company, absolutely do something different, EXPERIENCE DISCOMFORT, here's a fantastic rule: Profound satisfaction is inversely proportional to comfort. We get complacent. We slowly succumb to TV and potato chips. We go for the rut. You what a rut is? It's a coffin with the ends knocked out and you walk back and forth until you lie down in it. Challenge yourself. Grow a pair. Take a chance. Life is out there. Life demands creating new and powerful relationships. Stop trying to do it all by yourself. Get coaching. Take a class. Make connections. Find out where successful entrepreneurs meet and go there (you'd be amazed at how many are interested in helping you get started.) NETWORK YOUR ASS OFF!!! Use social networks.

4. As a group, we have this profound need to know everything before we attempt, quantify all the variables, plan for all the contingencies. This is a nonsubtle form of mental masturbation, and will displace your potential future with a million good reasons why you shouldn't leave the nest... consider you were born to fly and not flying is a waste of your purpose. If nothing else. There is a great course available all over the world, I'm not proselytizing the provider, they're great people don't get me wrong, but pushing their business is... well, their business :-) It's called the "Team Management and Leadership Program" [teamleadership.org]. It's a two year program to train you in powerful distinctions in being able to create enterprises both personal and professional, connect them with huge global networks and make them brilliantly productive all the while having more fun than the law should allow. Its not particularly cheap, but its not financial rape either. Part of the cost is the fact that there are 3 prerequisite classes that come before it (but they are weekend seminars, and with any luck you can get them out of the way over in anything from 2 to 6 months (the courses are surprisingly affordable considering the cost or most coursework these days.) The most expensive part of it for people in the US, is that you have to travel to a national convention/classroom once a quarter and they alternate between left and right coasts. They promise when you complete year one, you'll be fit to run a fair sized corporation and when you complete year two you'll be fit to run a fair sized nation. We are not born entrepreneurs. That's why we love machines, they do what you tell them, they're predictable and you get what you asked for even when its not what you wanted. Life takes a little more dancing and geeks, God luv'em, have two left feet. Get some education for the future you want to have, then pursue that with vigor. Live a life you love and live it powerfully. Why else would you even bother to breath?

Re:Similar Situation (1)

oyenamit (2474702) | more than 2 years ago | (#38691694)

I completely empathize with you. There was a phase in my career when I would go to office everyday hoping that I would be able to spend a decent amount of time on actual coding work. But at the end of each day, I would realize that all my bandwidth has been consumed by managerial activities like people handling, metrics, excel reports and all that jazz. It was the most frustrating period of my 8 year long career.

But it all ended about 2 years ago when I made a fresh start by switching to a new project within the same organization. While joining, I categorically demanded that I should not be expected to perform managerial duties and should be solely responsible for design/architecture/coding related work. It was not easy to convince them at first. After a couple of months, they again tried to shove people management responsibilities down my throat. But I stood my ground and eventually that stubborness paid off. Today, my peers envy me for the amount of technical work that I get to do while they are still stuck in the rut trying to get rid of managerial responsibilities.

Maybe a different thinking perspective (4, Insightful)

pkinetics (549289) | more than 2 years ago | (#38690448)

My overused response to a lot of questions is: Unask the question.

You've got a lot of technical and lead and coordination and probably management skills you've developed. So instead of asking where should you go next, ask what do you enjoy the most?

It may be that you do want the challenge of a lead architect position, in which case you might be looking for a startup company. I have no idea how people get to that level. Some are bottom up evolution, and some are top down revolution type people.

It may be that you want the joys of integration or release management, or something along those lines.

Basically, in a nutshell, ask yourself what makes you happiest and pursue that. Worst case scenario, you've wasted a few months. Best case scenario, you grow into a beautiful butterfly...

Re:Maybe a different thinking perspective (1)

PCM2 (4486) | more than 2 years ago | (#38690650)

Basically, in a nutshell, ask yourself what makes you happiest and pursue that. Worst case scenario, you've wasted a few months. Best case scenario, you grow into a beautiful butterfly...

I would add that the first time I quit a long-term, high-paying job, I enjoyed the time off for about two weeks. After that, I was white-knuckle stressed every day, wanting to get to work on a new job. I let it pass, though. I forced myself to ignore it, and by taking the time to really think about what I wanted to do next (or what I didn't want to do), I was eventually able to land myself a new job that I really enjoyed. If the submitter has been making good money so far and has the skills he describes, I'd say the best favor he can do himself is to realize that he's got some time and he doesn't need to jump into the first thing that presents itself. If you really want to enjoy your career, the best thing you can do is manage your career, rather than letting it manage you.

Re:Maybe a different thinking perspective (1)

rwv (1636355) | more than 2 years ago | (#38690976)

the joys of integration or release management

I do not believe that word means what you think it means.

Take a job in QA (4, Interesting)

CyberDong (137370) | more than 2 years ago | (#38690542)

Most developers tend to think that QA is for button pressers and failed programmers. However, having a couple of good programmers on the QA team can dramatically improve a product. If you're really a good programmer then you can take requirements and write GOOD tests. Also, as a programmer, you can deconstruct what the dev team has built, and look for ways to make it fail (i.e. the cases they failed to consider). If you understand the nuances of the language, you can better anticipate the edge cases that a lot of non-technical QA folks would miss.

I've been down this path, and found that when a dev team knows there's someone who will call bullshit on their submissions (and can back it up), the code that's checked in tends to be better.

Re:Take a job in QA (1)

caywen (942955) | more than 2 years ago | (#38691260)

The reason why most developers think of QA that way is because most QA is that way.

Re:Take a job in QA (0)

Anonymous Coward | more than 2 years ago | (#38691568)

WTF are you smoking?

Going from development is a career limiting move; unless you go management.

Its also going to be a step down in salary for most software engineers with 10 years of dev experience.

Re:Take a job in QA (1)

recharged95 (782975) | more than 2 years ago | (#38691686)

It depends on what field you're QA-ing in. Most game devs (which I noticed are representative of the replies so far), say QA sucks... a game can pass QA@75% and still be shippable. In that world it's all about shipping and user base (e.g. I shipped 5million units of that game).

" I was lead developer for a platform that shipped tens of millions of units"

Sounds like you're already in the game industry... A ERP dev would have said "I developed a framework to process million tracations a day". A CRM person would have said "I developed software that mines 1TB of data every minute". A mobile app dev would say "I made apps for every mobile platform, Apple, Android, and WP7". A social networking dev would say, "I have a web system that supported 1 million users". Context is important.

QA in the gaming is at the low end of the respect-pole. It makes sense cause gaming is near the top of the software food chain: hardware, s/w frameworks, messaging, graphics, networking... all of those critical things need to be done before a game is developed.. and usually developed and QA-ed in a non-gaming company. The game environment exploits near all tech, it's the "AI" and design that interests people. Now if you look at other industries, automotive, aerospace, medical, other forms of entertainment (movies & physical SFXs), robotics, military, and such, QA is extremely critical and can be quite exciting. For example QA on rockets, or military weapons can be 100x exciting and challenging than game design.

Basically the point is choose your interest in industry, then cultivate your skillset, I guarantee you'll be happy and will find a way to make cash that is good enough for you. It sounds like you're in the mood to try a new industry....

convergence is where it's at (3, Insightful)

xeno (2667) | more than 2 years ago | (#38690546)

Why is it that decent, smart people get it in their heads that they can only do one thing? Years ago I had some bungee-manager give me a lecture on how I was spreading myself too thin, and successful people chose one thing and did it well. Nonsense. Successful savants maybe, but creative/skilled people who've been doing something well for a decade or two..? (I'd steadfastly refused to choose between the management and tech tracks at my company, and my good performance in solving/building/managing/selling didn't fit their vision of a career.)

Instead of trying to find a place for yourself as a good systems engineer who will be applied to good peoplems, go look for an enterprise or business sector that could use someone like you. One of the coolest things I did in recent years was to stop thinking as an IT security geek (please, not another PCI assessment or pentest clown show), and got a yearlong gig with the UN as a governance reform manager who happened to specialize in IT. Same crap, but new challenges and way more satisfying work.

Look at the org's business, not the tech. Some examples: I have a engineering/physics/software geek friend who signed on last year with a biotech firm that does fish tagging. Instead of looking up up up the tech hierarchy, he now runs a small operation with just a couple of guys, doing world-class work. Another friend topped out in engineering management at a certain large redmond org, and decided that where she was working was more important that the specific engineering challenges, so she's now working for a school system in Hawaii. Both are incidentally now working on improving their health and have time for music that they'd been puting off for years. Second life in the real world. Nice.

Re:convergence is where it's at (0)

Anonymous Coward | more than 2 years ago | (#38690998)

This is about how I'd define "retirement".

Advancement where, then? (4, Interesting)

Jake73 (306340) | more than 2 years ago | (#38690548)

I'm not clear on exactly where you'd like to advance. You don't want to commit to your employer (and only took a 6-month contract) and you don't want to burden yourself with the risks associated with success (by not wanting to start a company). I assume this also means you don't want to partner with someone.

So you want exactly what out of advancement? No more risk. No more commitment. No more responsibility. Just money? Play the lottery.

Go to work for Microsoft or Google (0)

eman1961 (642519) | more than 2 years ago | (#38690582)

See if you can run with the big dogs.

Re:Go to work for Microsoft or Google (0)

Anonymous Coward | more than 2 years ago | (#38690788)

Find something that has bigger consequences for the quality of your work....

Take a job with a medical device company, air traffic control software, flight control systems.....you have bad day and a bug gets through people could die.

Try to get a job at the NSA, or if you are really good one of the think tanks or primary development contractors (I'm not talking about the beltway bandit contractors who provide warm bodies). You have a bad day and americans could die, you have a good day and non-americans will die ;-)

Team with a few good programmers. (0)

Anonymous Coward | more than 2 years ago | (#38690586)

With the variety of in demand skills it might be wise to team up with one or two other programmers each with his own speciality to offer a wide range of capability to a prospective employer. Kinda hard to know and do everything.

Failing that, marry a programmer wife and job hunt as a team.

Lead Architech on a large system (1)

Anonymous Coward | more than 2 years ago | (#38690594)

You should probably advance your programming career by being a lead architect on a large system. Something about your question draws me to this answer.

Slashdot is stagnated. Need to stop giving karma to ask slashdot submissions, so real questions needing real answers will get asked.

Your best option... (-1)

Anonymous Coward | more than 2 years ago | (#38690596)

Take a really big poop.

Try Consulting (3, Insightful)

LDAPMAN (930041) | more than 2 years ago | (#38690604)

Take your skills on the road and sell them to the highest bidder. Consulting has totally different challenges but takes advantage of your experience. I recommend you try it....and the money can be great.

Lead architect moves you out of programming ... (4, Insightful)

gstoddart (321705) | more than 2 years ago | (#38690734)

Almost anybody I've ever known who has moved onto being the lead architect isn't handling much (if any) code anymore. You're operating at a different level ... the overall design, the components that make it up, and working with the dev team to sort out problems. And, of course, working to define the requirements, use cases, and all of the other stuff like that.

Which is fine, but from what I've seen you can stay as an actual Programmer for so long, and then people expect you to move into architect/management roles to oversee the people who now do the coding. Your job becomes big-picture kind of stuff. Sometimes they look at someone of a certain age who is still writing code and wonder why you're still doing that.

If you're looking to solve new and interesting problems without feeling like you're doing the same thing over and over ... well, maybe what you want to do be doing it is working with a consulting company? The breadth and depth of your experience gets used for many different problems, it definitely changes often, and you get called in to help clients solve problems and develop solutions

Not saying consulting is for everyone, or that it's even the best choice out there ... but when I 'graduated' from a previous job as a programmer and got into consulting, I found I got to work on different projects, provide different insights into them, and then work towards the overall solution.

If you've been doing the kind of dev work you describe for long enough, there's a remarkable amount of soft skills you've likely picked up that are very marketable ... you don't need to know everything about everything, but knowing a lot about a lot of things actually makes you quite useful as a generalist skillset, with the ability to delve deeper when the need/occasion arises.

Build something that matters (0)

Anonymous Coward | more than 2 years ago | (#38690758)

It sounds like you're focusing a lot on what your role in the company is, and not on what that company is trying to build / achieve. If your role is focused on solving problems then every problem is different... and the problems your company is trying to solve don't challenge you then you're not in a very interesting / important company. On the other hand, if you're just following directions... writing code to meet the spec... then I could see that getting old quick.

Screw Tech (-1)

Anonymous Coward | more than 2 years ago | (#38690786)

I've been a developer for 20 years... I currently write iPhone/iPad apps... programming pay is good. It always has been if you're willing to stay on the cutting edge. But, I'm at the ceiling for pay. I can't make any more unless I strike it rich with a mobile app or become a CIO/CTO/CEO of a tech company. Also, there will be a constant downward pressure on salaries and rates for developers as there is more global competition for programming jobs. Programming is also getting easier and is turning into a cut and paste job more than anything so the barrier to entry is low.

Start your own company or pursue management, it's the only way up. Why continue to make someone else rich with their product or program?

Switch fields in programming (1)

dsvick (987919) | more than 2 years ago | (#38690828)

You could try a different branch of programming .... If you do standalone apps right now you could move into web programming or database programming or even mobile apps.

Change up the problem domain, or methods (2)

Gribflex (177733) | more than 2 years ago | (#38690832)

Given the restrictions that you have (keep doing what you're doing, but more advanced) then I would suggest one of two things.

[1] Change to a completely new set of problems. If you've been working in business software, change to games. In this way you will still be doing dev, but the kinds of problems that you are trying to solve will be completely different, which will lead to new challenges.

[2] Try changing up the 'how' of what you're doing. For example, look for a team that's using scrum methodology, or test-driven-development. Alternately, new tools, programming languages, platforms (Mostly focussing on windows? Go mac/mobile/unix/web.). Even just somewhere with a vastly different release cycle could be interesting - by last employer measured their dev cycles in years; my current employer in weeks. If you put the focus on the skills, instead of the work, it can be really rewarding. See Software Craftsman movement for related inspiration in this direction.

[3] Move. I'm on my third country now, and I can tell you that doing the same thing in a different country totally changes the game. French engineers do not think the same way as Canadian engineers. So much of our work is about problem solving, and being able to transform real world problems into software. It's been very cool to working through a problem with someone with a totally different world view.

To use an analogy: You are a great French chef; you've worked in a wide range of sit down restaurants from very small to very large. And you've always felt successful, but you now feel you're only option is to start your own business. I'm recommending that you [1] go work at a japanese restaurant, [2] try a catering company or 'fast food', or [3] try working in Vietnam.

20 years C programming dude here.. (0)

Anonymous Coward | more than 2 years ago | (#38690838)

I have written C code for 20 years and know (too) many other languages, i don't care to mention, too...

("too many" because I was a Java-buzz-victim too... "compile once, run anywhere" lol.. bullshit)

I find my companies projects increasingly boring.. and secretly tinker on my own open source projects during work time because they are more appealing.. I am interested in N-grams and how to turn that into something close to an AI and such... it also involves data mining and such... cool stuff...

I am seriously thinking about living from social welfare and focusing on my own projects 100%... I lived from social welfare before and have learned how to get by and have internet with so little money...

Really, work is stupid.. I am sick and tired of wasting my precious time with other peoples projects..

what motivates you...? (1)

bodland (522967) | more than 2 years ago | (#38690852)

Money...
Cleverness...
Sloth...
Babes...
Fame...
Only on person had it all....Bill Murray...
Seriously, if you have money in the bank or the ability to put money in the bank do that for a year or two...then chuck it all, and do something completely out of character...like go volunteer some place...go sailing, visit all the baseball parks in one season, take up something inherently selfish for a few years and enjoy the world and it's people...meet people, love and enjoy the beauty of the world. When you have run out of money go back to work and you will be surprised how motivated you will be. Motivated to fill the bank again so you go off on another adventure...life is too short to be a code monkey or a slave to your customers...or strapped to someone's insane project and crappy software...go now.

is money an object? (1)

roman_mir (125474) | more than 2 years ago | (#38691068)

if you can survive without a paycheck for a couple of years, why not use the time to consult for some business that may be of interest to you at a low enough rate that they won't mind having you around, present yourself as a business analyst/applications architect and offer them to spend time on their business problems and attempt to come up with some solutions to help them?

After all, unless you are going to do theoretical stuff in computing, the only other choice is to do applied computing. If you are looking for a challenge and not necessarily security or pay-check, then looking at something that you never thought you'd be involved with and then coming up with ways to be useful there by creating some form of automation/solution may give you the challenge you are looking for and it also can translate into a future model for you to earn some money while doing more of this risky stuff that's not boring.

explore a new area? (1)

Surt (22457) | more than 2 years ago | (#38691196)

Are you a database expert?
How about integration?
Performance and scalability?
Web? (It's been sooo many years now and there still isn't a good interactive web library ... as a result of which basically every website sucks compared to what windows programs could do a decade before, so if you feel like a challenge ...)

Tips for promotion in programming (1)

cashman73 (855518) | more than 2 years ago | (#38691204)

For promotion as a programmer, you should follow the Peter Gibbons example. Come in to work every day about 15 minute late,. . . use the side door so Lumbergh can't see you,. . . ;-) Then, just space out at your desk for awhile. But look like you're working. Do that for about an hour after lunch, too. You need to try and keep the actual work that you do down to about 15 minutes of real, actual work, per week. Also, never put cover sheets on your TPS reports.

Reformulate your question (1)

eulernet (1132389) | more than 2 years ago | (#38691228)

I propose 2 methods to reformulate your question:

1) root-cause analysis: take your original question, and ask why you want that. Find 3 to 5 answers.
Reapply the process to your answers: why do you want that ?
Answers that have no parent are root causes.
When there are no more answers, take a look at all the root causes, and what you are searching should be obvious !

2) domain analysis: enumerate all your activities in development.
For example: coding, debugging, managing, planning, etc...
Now, put a score on every activity, 0=it sucks, 10=it's great.
When you finished the scoring, take the 3 biggest scores, and imagine what job could fit these 3 activities without the other activities.
That is your dream job !

If you still don't know, read this:
http://www.inspirationandchai.com/Regrets-of-the-Dying.html [inspirationandchai.com]

The best thing to do (4, Insightful)

caywen (942955) | more than 2 years ago | (#38691284)

Take some time off and reflect. Slashdot isn't going to provide you with any wisdom for something that is a function of you and your feelings.

Do it again (0)

Anonymous Coward | more than 2 years ago | (#38691370)

Join a startup, build their product to stardom. Do it all again.

Maybe the first time around you just got lucky.

Put your resume on job boards (1)

GWBasic (900357) | more than 2 years ago | (#38691408)

Someone with your skillset is in high demand. It's very easy to just cast an uber-wide net, listen to job after job, and then decide where you want to focus.

Put your resume on job boards and then take your pick. In addition to things like Monster, Dice, look for smaller boards that cater to niches that you might be interested in. On your resume, state that you're looking for either a full-time job or a few short contracts until you find the right position. Keep casting as wide of a net as possible until you figure out what your interest is, and then narrow your search.

When recruiters call you, without sounding cocky, politely state that you know that you're in demand and that you're still trying to focus your career search. Hang up on anyone who tries to negotiate salary or contract rate in the first call. Do not go to any recruitment agency's offices in-person, especially if they come across as high-pressure.

Waaaay too short sighted... (1)

billybob_jcv (967047) | more than 2 years ago | (#38691484)

10 years? Yeah - you're the cock of the walk, almost at the peak of your programming career. Now, picture yourself at 50 years old. Look around your office. Do you see any 50 year old programmers? If you do, he's probably the surly little troll sitting in the corner working on some old legacy code that no one else in the office will touch.

You need to start planning for what you will do when you aren't programming any more. Development manager? Project manager? Enterprise Architect is cool - but how many of those are in a typical company - and many companies don't have that role at all. Contrary to what most career books will tell you, for the vast majority of companies, there *is* a ceiling to the technical path. To get to the Director or VP level you will need much more than tech skills. I think it's better to start learning about project & people management now than 20 years from now when you are being bypassed by younger folks who have taken the time to learn more than code.

Same Boat (0)

Anonymous Coward | more than 2 years ago | (#38691572)

I'm 15 years in, professional full-time and I managed to get the lead on a pretty decently sized system in 2005. It was a 3 person team and a 3 year, 2 phase rollout. The company was a software vendor and it was a major surgical documentation system that integrated with our flagship product, and multiple third party inventory control systems. I was responsible for the entire project, soup to nuts.

I did the the project plan and estimation, the hiring of the other two developers, the allocation of tasks based on ability, the database design, the ORM, the overall architecture of the app, handling any personnel issues, and a bunch of the coding. I worked with QA during the testing phase, and the sales / trainers to make sure they knew what they were doing. I worked with the documentation people to make sure it was right and they knew what to write. I pulled requirements from the BA who was an expert at domain knowledge of how such a system should work, but didn't know much about computers. I worked with our beta clients to make sure their needs were met. We made it on time and on budget. It was all aspects of the SDLC and I was in charge of every facet. It was a lot of work, but very fulfilling.

It allowed me to check that box off of my accomplishments: full responsibility for a major system that was sold to other companies. We acquired another company that sort of did the same thing for way to much money, and they ended up shelving it 2 weeks before the user's group that was to announce it to the public to justify the overpriced acquisition. That was kinda a kick in the balls, but it was still worth it. I would liked to have seen it public though.

Now I'm writing iPhone apps on the side and designing and building complex automation engines with another company. That's pretty fun too, but I'd really like the iPhone apps to take off so I could just do that and live off it.

Also, if you get a chance and you haven't done so, work for a shrink-wrap software company, preferably small (not like MS). It's a lot different from internal IT. They're few and far between these days because everyone wants everything in a browser.

Side rant: I don't understand why someone would call themselves an architect when they aren't getting dirty implementing their own designs.

Speech/Image/Signal Processing, BioInformatics, AI (0)

Anonymous Coward | more than 2 years ago | (#38691594)

Honestly, if you are looking for new challenges IN PROGRAMMING because you love it and don't want to go to the dark side of management/marketing, I think that's a great thing.

Try considering branching out into the realm of the computer taking input from the larger world, better comprehending the world it finds itself in, or manipulating somehow the real world. Look at the challenges of Speech Processing, Image Processing, BioInformatics and Artificial Intelligence. All fields require you beginning with a solid understanding of programming and then learning something else and then putting the two together. Too often these challenges get attempted by a bunch of grad students operating like code monkeys to solve some problem in a lab that would be overwhelming to make work in any kind of more general setting -- but a true programmer knows how to refactor the challenge several times over and can write the gorilla programs that write the monkey programs to write the final program.

All those code snippets and algorithms you have in your toolbox by now become the starting point for something else much cooler and tangible to measure / demonstrate / take pride in than just units shipped until Mitt Romney comes to buy out your next company.

Change focus area (security, embedded, etc) (0)

Anonymous Coward | more than 2 years ago | (#38691690)

Take what you've known and are good at and branch into a something slightly different.

Focus on security and testing applications for vulns or working to exploit them
Move from consumer to industrial or embedded side of things
Look for a teaching job
Find an industry you are about (biometrics, green energy, NGO, etc) and do the job to help advance them instead of just programing for a job

And yes, if you can afford it, take 6 mo off. Research, read, relax, etc. You can bill it as a sabbatical on your resume as long as you can show some output from it.

Truth of the matter (1)

cshark (673578) | more than 2 years ago | (#38691748)

If you want to advance, don't become especially good at anything technical. Have problems, make stupid mistakes. If you're a really good programmer under 40, it's a dead end job.

What career advancement? (0)

Anonymous Coward | more than 2 years ago | (#38691768)

Right out of graduate school twenty years ago I started as a senior software engineer. That's still my title, and I suppose I will retire a senior software engineer. After a couple of brief stints in management, I noticed that that is not where I can contribute best.

The HR people keep lecturing on "career advancement" opportunities as though everybody hated their job or were unfit for it. It just may be that you are lucky enough to be where you belong.

As for the challenges not changing, it is a bit depressing that the advances in the field are excruciatingly slow. You end up confronting problems in every company that were solved in the 80's or before. I guess there are limits to the average engineer's problem solving skills. One nice new thing is the general acceptance of garbage collection. One of the nasty newish habits I'm hoping the industry will grow out of is the ubiquity of threads as general-purpose context containers.

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...