Recently, I met a developer who was frustrated. This web developer had been programming and developing websites for nearly 10 years, but admitted he was having a very hard time keeping up with the younger faster developers that knew the new languages.
It’s not really about age, but about the ability to constantly learn new languages and skills in order to stay competitive in the environment. The last thing he wanted to do as a web developer is get stuck doing production work, or maintaining a system someone else had already built for him.
I suggested that he should probably look at expanding his business skills, to grow beyond being a ‘code monkey’ which would lead him beyond tech lead, into program management and eventually strategy.
What specific steps did I tell him to take?
Start reading books on web management and process management Understand how the software fits into the greater scheme of the business, department, or company Expand and learn more about user experience research Grow a network by adopting social media to learn, discuss, and market oneself Lead projects: develop needs, do research, develop plans, create feature function reports, and feasibility reports, learn cost/benefit analysis Lead programs: manage a business program (where software is the core) and manage it like a profit and loss, become an integrated part of the business. Practice presentation to business managers and stakeholders Engage business teams in meetings, training, and lunch
Ultimately, he should be able to move into a more business role, where business and customer needs are always present (and hopefully, with greater compensation and opportunities). Since strategy is always needed, and armed with a strong technology background, he should be able to move into a position that requires less time to re-invent a new language every other year.
Do you have suggestions for him? What should he do to avoid the developer recycle shuffle and move up the food chain?
Great post. I am experiencing this myself lately. I feel like I am getting older, and losing my passion for programming all hours of the night, and it is tough to keep up with the younger programmers.
What I do have is experience, knowledge and wisdom of web application deployment and business needs. Your specific steps you told him to take are great. Exactly where I have been heading.
Only thing I would add is with this busy “2.0” world right now there is a real need to translate all of this to the average business owner and worker.
I find myself explaining RSS, API’s, Mashups and other technologies people have problem wrapping their minds around.
I also test drive many new applications and write up small case studies and help small businesses and non profits evaluate the best solution for their needs.
Everything 2.0 is being digested by us 8% of Internet alpha geeks and it will require consulting and explaining it to the other 92% over the next 5-10 years.
Just some thoughts on how I am approaching this.
Great post and great advice. This is common as we get older and it is harder to stay current. If developers plan to move this direction it is also a thought to go out on their own, create their own products or do consulting work as a leader or architect for development teams.
The experience of a seasoned developer, IMHO, is so much more valuable than some hot-shot young developer who is willing to write code for 80 hours per week and drinking Jolt or the caffinated drink of the week.
Sometimes it is the job that gets stale. I recommend the developer look at the opportunities for technical growth at current job and assess if a change is in order. If they are a freelancer, then that is a bigger challenge. I tend to learn by doing, so get involved with jobs/projects that provide opportunities to learn from the new hot shots. You would be surprised how much each party has to offer and learn. I know they wanted to skip maintenance of existing app, but if that app is a technology they don’t have a command of, they will learn it.
That said, I have to concur that having an eye for user experience is a very hot commodity and transcends the newest technologies. Also, work on communication skills–being able to interpret and relay technical and business issues between developers and business is growing even more valuable in this age of outourcing. Having a blog and writing regularly will help, but you also need face to face time. Get involved with projects during requirements phase–this will also help towards learning to manage technical projects and give you opportunities to provide insight or other added value (but also know when to keep quiet) during a phase of projects most developers don’t get exposure to.
Any books in particular you would recommend?
I’d recommend that a coder in this situation consider a change of job before considering a change of career. It’s simply not the case that every coder can or should move into engineering management, and an awful lot of coders who proceed up what they perceive to be the next rung in the career ladder wind up being profoundly unhappy.
That said, it is never a bad idea for coders to gain more experience on the business side, no matter where you happen to be in your career trajectory. But the best way to get that experience is not (just) to read a book, but to start a business.
Check out this ChangeThis Manifesto on this topic.
http://www.changethis.com/17.25WaystoDistinguish
He should hire some of them little buggers and have ’em do his work for him.
He could go into the management side of things but it depends on a few factors.
A good book is Michael E Gerber’s The E-Myth Revisited to see what I mean.
It’s a great topic, Jeremiah. My wife went through this. She spent so much time designing inside, that she got sick of making small changes to the same brand.
Add usability people to the mix, and the creativity of web design goes away, replaced by identity standards measured to produce the best response.
Her solution has always been to take new job. This is crucial for designers, but developers run through the same problem. Sometimes you just need to be around new people doing something new to resharpen that creative pencil.
I’d also suggest taking creative courses at a local school. Drawing, painting, creative writing, video production and interior design may not seem like business worthy courses, but learning the basics of another discipline often reminds you of what you loved about learning in the first place. And if you are learning, you never feel stale.
Volunteer to do web work for a non-profit in your area. This would give you the chance to develop new skills and work with people in a different framework. They would appreciate it since they are always low on resources (money) and it can be a very energising experience.
I can absolutely relate to this. I’m a designer / front-end developer that has been in the business for 10 years. Let me repeat that: ten years. Ironically, burnout tends to happen when business is at its peak. One project after another, after another…sometimes there is no end in sight. I can personally relate to his pain.
But my advice is opposite of the bullets listed above. When you get stale, you have to go do something completely unrelated to your field. If possible, take a hiatus from projects. If this isn’t feasible, go learn to do something challenging (and completely unrelated to work) in your free time. Learn French. Start mountain biking. Explore your fascination with base jumping. Take a few culinary courses. Indulge your love affair with wines. Who knows. But you have to redefine yourself for yourself.
For me, I enrolled in school part-time for a completely new career. As the weeks rolled by I found it hard to find time to do more than give a cursory glance at email, let alone dig into hefty projects. As time wore on, something surprised me… I actually missed the very thing I’d become tired of doing. Deep down I missed using my skills. But better than that, I came back with bubbling with new ideas for projects, for clients, for things I had yet to accomplish in the technology sector.
Sometimes it isn’t about waiting for a client to ask you to learn something new. Often, the best skills are those you decide to take on for yourself. I’ve come out of my self-imposed hiatus with a completely fresh take on design, our business and life in general. In the end, our clients and our company will benefit.
Bottom line: When your computer screen looks back at you like a lifeless, dull piece of equipment it’s time to close the laptop. Trust me, a little downtime is good for the soul.