Where do you work? Are you working for a software development company? Are you working directly on the product that's making your company money? If so, great! You may have a rocking development machine. You may get sent to conferences to network with your peers. You may get sent to training on the latest technologies. You may even have lots of dev tools and libraries at your disposal.
This post is not for you.
This post is for the employees in Corporate IT positions. This post is for all the Dark Matter Developers. This post is for all the 501 Developers. This post is for anyone who is working in what they call a "cost center", meaning that they support the business unit they are in but are not directly responsible for making the money that keeps the company going.
Because they are not revenue generators for their business, these corporate IT departments are often not very well understood. The businesses they work in are not technical companies, and they often see technology more like a utility service than like the strategic partner or business differentiator that it could be.
Sometimes these departments are understaffed, making it hard to produce code the "right" way. Sometimes the tools they have at their disposal are subpar. Sometimes the developers, even if they follow and learn good practices, are only there to maintain what the contractors are brought in to build. And if you're still following along, I'm probably not telling you something you don't know.
But something you do need to consider: your skills will atrophy in this environment. Too many people leave a great environment where they have business knowledge that matters, just to get involved in some more interesting technology, because they have become subject matter experts that can't be allowed to work on different things.
Just because you're Dark Matter, doesn't mean you Don't Matter. We very much want to hear what you have to say.
You can be a great developer, even if you're in corporate IT, but you may not get the help and support you need from your management. This isn't because they're bad people. They just may not understand exactly what it takes to keep creative people interested. Or they may not understand that a couple thousand dollars a year for a training budget to keep a good employee is better than paying alarming penalties in restaffing and training costs when they leave.
What I'm saying is that you may have to take responsibility for your own personal development. You have to work harder to stay up on things, because the technologies you use where you are may not be the latest and greatest. They may not even be fun to work with. But you owe it to yourself to stay relevant, and that isn't necessarily your company's goal.
Commit at least some of your time to reading blogs. Follow some leaders in the industry that you like. My personal favorites are mentioned in my earlier post The Cult of Do, but I'll take suggestions. I love hearing about new thinkers out there who have joined the conversation. It takes very little to set this up in Google reader, and you can dial the content up or down as you need to feel like you're not hitting information overload.
Another way to get some time in with new technologies: attend free community events. At a minimum, know what is offered around you. In the Chicago area, it's things like Chicago Code Camp, a free technology conference, or the Chicago .NET Users Group. These are great ways to network, and have a good time learning about new technologies that you may not be using.
If you crave experience in a new technology, find some way to do it, even for free. Lots of people will tell you that you need to do open source projects, but that's just one way to code with folks. What about giving some of your time to code for charity with a project like GiveCamp? You can code for charity for a weekend? Sure, it's some of your time, but this experience may be better than the last year you spend maintaining a Visual Basic application from the early 2000's.
Or maybe you're a little competitive? Try participating in a team in a Hackathon! Great prizes, and you get to code with new folks in a new environment.
This one may come as a shock. Yes, you may have to part with some cash on your own to invest in yourself as a professional. Remember, your company doesn't owe you personal growth. They owe you cash for your talents. Keeping your talents sharp may be up to you.
Here are some tools that might be within your grasp as someone who wants to keep up. A personal ReSharper license costs $149. Learn to use it, and you'll be coding like a Jedi in no time. An unlimited annual subscription to Tekpub is $300. It's got all kinds of cutting edge topics, presented by experts in the field. If you feel like you're behind on some of the latest/greatest, check it out.
Finally, I want to put in a plug for regional conferences. Smaller regional technical conferences like Codemash in Ohio are a great deal for personal investment, especially when compared against the relatively expensive TechEd. These are great ways to meet people and companies in your area, be part of the conversation, and to learn lots of great new things from peers. Regional also means that you won't have to fly to get there, meaning that cost is even less of a factor.
Consider That Conference. It's a new polyglot conference servicing the Midwest and is focused on the Web, Mobile, and Cloud. Three days, 150 presentations, and it's only $349. Compare that to the couple grand that TechEd will set you back. Throw in a couple nights at the waterpark resort it's attached to, and you only get set back about a grand total. Compare that to the thrill of what you'll learn. Compare that to the confidence you'll have with your new skill set, or the next great job opportunity. It's an investment in yourself, an investment in your future. As of this writing, registration for That Conference is still open for 2012. Consider what it can mean to the future you.
You are in charge. Make it happen.