Thursday, February 18, 2010

Software Development Career Paths: Up or Out?

Continued from Software-Development Career Paths: Organizational Quality.

Moving Up
For this option, mostly I can only repeat the traditional oft-heard worries: your tech skills will get rusty and you'll be stuck in middle-management forever.

On the other hand, I don't think developers who like to code should dismiss moving up out of hand. If you get a chance, try it. Who knows, you might like it.

There's a nice discussion about staying technical as a manager over on Rands In Repose: Technicality. If you keep your technical skills sharp, then hopefully if it turns out that you hate being a manager, you can still go back to being a developer.

Moving Out
Lately I have a new perspective on moving out, thanks to the software craftsmanship movement. How many books and articles have you read lately that use the word "journeyman?" There's a reason the word "jouney" is in there.

In parts of Europe… spending time as a journeyman, moving from one town to another to gain experience of different workshops, was an important part of the training of an aspirant master. [Wikipedia, Journeyman]

Although I don't think it's a perfect book, Apprenticeship Patterns by Dave Hoover and Adewale Oshineye is currently the best reference I know for thinking about different ways to approach a career as a software craftsman from the perspective of an individual developer rather than that of a manager.

Another Option: Stay Small, Maybe Even Really Small
Keep in mind that not all organizations force you to choose between coding and managing. Smaller companies often don't have "Eiffel Tower corporate hierarchies." If you're moving around, you might find more satisfaction sticking with smaller companies, especially since that way you're more likely to personally provide value to customers, as described by Cameron Purdy in his great article Eight Theses.

Don't forget that you can go it on your own. Recently at DDD8, Liam Westley gave a talk about owning your own software development company. Of course, the talk assumed that you already "have commercial ideas, clients, or sales leads." I have no idea how to get to that point, but the fact that Liam was there giving the talk is a reminder that people actually do manage it.

Staying Motivated
Whether you literally become a journeyman by moving among companies or you stay for a long time at a single company, if you don't want to move up, you may need to look for non-traditional ways to keep yourself up-to-date technically and otherwise generally motivated, especially if you find yourself occasionally working at places that treat you as an interchangeable coding machine.

Apprenticeship Patterns gives some ideas about how to do this. Obviously, there are always things like learning new languages, participating in either local or virtual developer communities, and in open source projects.

Interestingly, all of those things follow a general leadership-followership pattern that's pointed out in The Art of Followership:

[An] example, which is becoming increasingly common in developed countries, occurs with employees who have extensive professional education. These employees can often perform their work assignments without relying on technical guidance from their hierarchical superiors. Their education often includes a strong socialization component, instilling in them a desire for autonomous, self-controlling behavior and the tendency to look to their professional colleagues for support and recognition. This often occurs with university professors who are highly educated and tenured. These individuals often view their university as a place to practice their teaching and research skills with little interference by administrators. They work with and obtain feedback from colleagues, they read academic journals for up-to-date information on their field, and they derive intrinsic satisfaction from their publications and recognition at academic conferences. Similar tendencies exist in firms that provide consulting and accounting services. In these instances, professional education and socialization can replace or substitute for a leader's direction and supportive behavior. [Chapter 3, Three Perspectives on Followership by Howell and Mendez]

I don't think the software development profession has necessarily quite reached this point yet, but it's an interesting perspective to keep in mind. Ideally, you can get "support and recognition" from your "hierarchical superiors" as well as your peers. Anything else is draining. However, in a pinch, don't forget to look out as well as up to get the sustenance you need to nurture your craft.


  1. Either way, the ceiling--even for a top-notch coder--is pretty low. At best (if you shed a bit of your technicality), a product manager.

    There's only two ways, if you're actually trying to make it to the top:

    1) Learn to do real management, CTO is mostly management, not coding
    2) Start a company

    Lest you grow old and find that you've crash-landed in a middle-management position by your 40s.

  2. I think staying at a single company for longer time makes you a perfect journey man instead of moving from here and there. Definitely if you are not gaining anything from that company then moving to another company will be a good choice.

  3. As a conclusion of your article I want to add some. The best decision for creating and supporting of any IT software will be using some professional software development company. This is the right choice for everyone who want to start some project and don't have enough of resources for creating some software by your own. Here is the great IT outsourcing company try some if you need to create some IT software or make the market research for your startup. Good luck.

  4. If you keep your technical skills sharp, then hopefully if it turns out that you hate being a manager, you can still go back to being a developer.speech recognition program

    1. A IEEE project is an interrelated arrangement of exercises, having a positive beginning and end point and bringing about an interesting result in Engineering Colleges for a particular asset assignment working under a triple limitation - time, cost and execution. Final Year Project Domains for CSE In Engineering Colleges, final year IEEE Project Management requires the utilization of abilities and information to arrange, plan, plan, direct, control, screen, and assess a final year project for cse. The utilization of Project Management to accomplish authoritative objectives has expanded quickly and many engineering colleges have reacted with final year IEEE projects Project Centers in Chennai for CSE to help students in learning these remarkable abilities.

      Spring Framework has already made serious inroads as an integrated technology stack for building user-facing applications. Spring Framework Corporate TRaining the authors explore the idea of using Java in Big Data platforms.
      Specifically, Spring Framework provides various tasks are geared around preparing data for further analysis and visualization. Spring Training in Chennai

  5. Great article. I like your blog.Thanks for sharing.

    IELTS classes in Kuwait

  6. The degree of development of software teaches you as a software developer, but also teaches you to be thoroughly professional from both the technical and non-technical skills critical to success in a business environment.
    winzip activation code

  7. I've been struggling with the same problem for some time now. I literally went through tens of casinos to find the one I like the most, with free bonuses of course. So feel free to follow my steps and get a lot of bonuses at at 777 Spin Slot. They do offer a lot of great deals and games to win some money.

  8. All the career options are fluctuating but there is the most risk in the IT sectors. There is a repeated ups and downs here but we need to move uniformly in oredr to stay away from crises. The bigger the company, the risk is the higher. I completely agree with your post. Staying small can be a smart way and this is what maximum companies are following. A small company may not have a huge profite but it will never go on loss. Thanks for sharing.

  9. The author has composed this blog in the most aesthetic way. Awe inspiring!

  10. Entah ini hanya sebatas opini atau mitos saja cara menggugurkan kandungan dengan bumbu dapur dengan menggunakan kunyit asam maupun asam jawa , jahe maupun manjakani dan merica mampu untuk cara menggugurkan kehamilan . Padahal yang perlu anda ketahui resiko menggugurkan kandungan sangat berbahaya dan berat . Oleh sebab itu , anda jangan sembarangan melakukannya . telat datang bulan yang dialami wanita selalu dikaitkan dengan kehamilan , Padahal ada beberapa penyebab alat reproduksi wanita mengalami gangguan tersebut seperti stess , tidak menjaga pola makan sehat dan sebagainya . Untuk para suami agar terjalin hubungan intim yang harmonis sangat perlu sekali untuk mengetahui cara merangsang wanita supaya pasangan anda lebih bergairah dalam menjalin asmara bersama anda .

  11. It helps to learn about the project on which an expert staff is performing software development. There is also Six Sigma, which is used to analyze the company's statistics and improve its performance.Open Source crowdfunding software for sale

  12. Starting up a Coffee Shop or any Coffee related business such as a Sandwich Bar, Deli, Takeaway Fast Food Outlet has to be given the same consideration as any business venture. This article is meant to be a "Basic Guide" to give you some things to think about when wanting to start a Coffee business. It's not meant to a "Step by Step Guide". Detailed planning is going to be unique to your circumstances and should be discussed with your Business advisors, Accountant and Bank.


  13. تنظيف منازل بالدمام تنظيف منازل بالدمام
    تنظيف منازل بالاحساء تنظيف منازل بالاحساء
    تنظيف منازل بمكة تنظيف منازل بمكة
    تنظيف منازل بجدة تنظيف منازل بجدة
    تنظيف منازل بالمدينة المنورة تنظيف منازل بالمدينة المنورة

  14. A borrower cannot predict the occurrence of an expense beforehand. Conventionally however, borrowers were expected to predict well and keep a minimum gap of one month between application and approval. The borrowers who could not were left with no choice except to get finance at excessively high rates of interest. Instant loans changed all this. This article explains how instant loans have brought about a change in the loans scenario. The article also states the various forms of instant loans that are available in the financial market nowadays. buymodafinilonline

  15. Social media for small businesses is a great way for emerging businesses to generate lead and build a reputation. If regularly updated, social media can deliver more results as compared to traditional mediums. Social media for small businesses gives brands an edge of control over the content that they want to post.Also, since social media is a two-way dialogue process, it helps businesses to instantly identify what is benefitting them. Social media for small businesses also helps generate Word of Mouth, which is one of the best tools for emerging businesses. rhino modeling program

  16. Both are powerful for a short measure of time however in the end the accident comes modvigil

  17. Just wish to say your article is as amazing. The clarity in your post is simply cool and i can assume you are an expert on this subject. Fine with your permission allow me to grab your feed to keep updated with forthcoming post. Thanks a million and please carry on the rewarding work. putlocker

  18. Upkeep exertion estimation procedures go from the oversimplified degree of exertion strategy, through progressively attentive examination and advancement practice adjustments, to the utilization of parametric models so as to utilize verifiable information to extend future needs.
    itools 4 crack free download

  19. The reason it's so important is that it is the major factor in getting good quality software. Developing software that works and works well is the ultimate aim of a project, audacity download and the testing stage is where this is done.

  20. I love the way you write and share your niche! Very interesting and different! Keep it coming! Website Scraper

  21. I read a article under the same title some time ago, but this articles quality is much, much better. How you do this.. Twitter Email Scraper

  22. Such an amazing blog. The post in this blog is also awesome due to its way of writing and content which makes it very amazing also. Keep it up. IT Outsourcing Company.

  23. Thank you for this really useful and extensive post. I will keep it in mind, if I ever go to bpo service provider. Trupp Global is a one of the best bpo companies in india focused on delivering awesome customer experiences for its clients.
    Business Process Outsourcing Services

  24. Very good information, This information will always help everyone for gaining knowledge. So please always share your essential information. I am very thankful to you for providing good information. website designer sydney