I’ve been programming C# professionally for a bit over 4 years now. For the past 4 years I’ve worked for a few small/medium companies ranging from “web/ads agencies”, small industry specific software shops to a small startup. I've been mainly doing "business apps" that involves using high-level programming languages (garbage collected) and my overall experience was that all of the works I’ve done could have been more professional. A lot of the things were done incorrectly (in a rush) mainly due to cost factor that people always wanted something “now” and with the smallest amount of spendable money. I kept on thinking maybe if I could work for a bigger companies or a company that’s better suited for programmers, or somewhere that's got the money and time to really build something longer term and more maintainable I may have enjoyed more in my career. I’ve never had a “mentor” that guided me through my 4 years career. I am pretty much blog / google / self taught programmer other than my bachelor IT degree.

I’ve also observed another issue that most so called “senior” programmer in “my working environment” are really not that senior skill wise. They are “senior” only because they’ve been a long time programmer, but the code they write or the decisions they make are absolutely rubbish! They don't want to learn, they don't want to be better they just want to get paid and do what they've told to do which make sense and most of us are like that. Maybe that’s why they are where they are now. But I don’t want to become like them I want to be better. I’ve run into a mental state that I no longer intend to be a programmer for my future career. I started to think maybe there are better things out there to work on. The more blogs I read, the more “best practices” I’ve tried the more I feel I am drifting away from “my reality”. But I am not a great programmer otherwise I don't think I am where I am now. I think 4-5 years is a stage that can be a step forward career wise or a step out of where you are.

I just wanted to hear what other have to say about what I’ve mentioned above and whether you’ve experienced similar situation in your past programming career and how you dealt with it. Thanks.

  • 73
    4- 5, sorry, I thought it read 45 years and might promote some interesting discussion. You children :-) (32 years in, still not in crisis) – High Performance Mark Nov 6 '09 at 8:04
  • 7
    It's only because now days it's so easy to be good at something, but most often being good at something isn't gonna cut anymore, you have to be extremely good at what you do but throughout my experience I've seen pretty much 2 people max who are great at what they do. – Jeff Nov 6 '09 at 8:09
  • 5
    Interesting question, but there's no real answer. I'd strongly recommend community wiki status. – David Thornley Nov 6 '09 at 16:10
  • 3
    Another vote for community-wiki – sylvanaar Nov 6 '09 at 16:39
  • 4
    Programming takes a long time to master and most people chase the money and glory, playing corporate politics. norvig.com/21-days.html Here, here for the supposed senior programmers. I'm on the other side of the fence, after 20+ yrs. I have to hire these people and it's not often you find someone that can really claim to be a senior programmer. Most of these people have hardly completed their first year 5 times, not the same as 5 years building and growing. – wentbackward Nov 7 '09 at 6:00

63 Answers 63


I just started working about 2 months ago in a small company. Programming isn't boring at all if you really love it. And I also rely on the internet to search for answers for my own questions but there is also our manager (who is also a developer/programmer) who I can ask from. Well, it's not all about earning huge income but your passion to get things done. Try to add some skills. I'm not just programming but I'm also writing. I'm also into database design. When I'll have my spare time, I'll start doing my personal project. As of now, I enjoy what I'm doing and I'll be still enjoying it after 5 years.

  • 6 months from now you will find your manager knows only a few pages more than you've read. And please check back in 5 years time. Most of the time is not you that not loving programming anymore is mostly the environment that made you so angry that you no longer want to be in the business. – Jeff Nov 18 '09 at 20:47
  • Our manager is supporting us and he believes that we can surpass him. He wants us to explore and to be the best that we can be. – jean27 Nov 19 '09 at 0:55

what do you do when "personal projects" no longer give you sufficient learning or motivation?

  • I believe personal projects will always give you the opportunity to learn and motivates you however the problem is how good these projects are. If they are really good you can probably make it become a commercial products. But most personal projects are crap ideas or just repeating what you've done previously in a different implementation or language or platform. – Jeff Jan 15 '10 at 19:49
  • my experience is that good sales and marketing accounts for 90% of product success, and what you learn in "personal projects" is the remaining 10%. so i never kid myself these are anything more than technical skill acquisition. my 2c worth – Jonathan Jan 18 '10 at 13:20

The single biggest strategy I've found for improving my code is code reviews. Even a less-senior dev can occasionally find and suggest an improvement. The hardest part is leaving my ego out of the process.

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