I was chatting with a freshman college student over the weekend about paths of study and potential future jobs. It got me to thinking about my past, present, and future work. I have worked in retail sales ,for a large corporation, and for myself as a second job.
Working in a corporate environment has its pluses and minuses. Corporations have fixed budgets and generally fixed attitudes toward technology. While they may provide cutting edge technology to their customers the operational employees may be stuck with old equipment, old software, and old knowledge about technology.
Managers have to hire a skillset to meet the production demands of their department. So when an operational group adds a development team to support web based reporting or even data distribution, they build their team with current needs and the knowledge they have of how things work. After a couple of years the technology may change but the team may not expand their knowledge or have the purchasing power to buy new tools to support the newer technologies. It is usually up to one of the members of the team to drag the rest of the team into trying something new or to try and automate manual processes so more work can be created. Management may be unwilling to invest in education, time, or software to enhance the established process. This is why major telecoms still have billing systems on mainframes written in Fortran. It works so why mess with it.
If that one employee gets too far ahead in his/her knowledge they can become dissatisfied in the progression of their work. They do not get the opportunity to try out new methods and software on real world circumstances. Their fellow employees may be unwilling to try new things. Thus they either begin a website to build their skills or they go job hunting to find opportunities to grow, or both.
In the quest for solutions to problems one can be exposed to other developers who are doing things that seem interesting. These days, many cutting edge developers have personal and corporate blogs where they share their knowledge. You can live vicariously through them or even interact with them. You can watch them over time and determine if this is an environment that thrives on making work better and more efficient or is just playing with new technology just to be cool. You can watch for changes in key leaders and the advancement of underlings to determine opportunity. You can determine if this would be a good place to work.
Working for one’s self or even in a smaller developer shop you get exposed to a wider set of challenges and you can usually determine the most efficient tools to overcome those challenges. Thus you get exposed to a broader range of technology tools. But you are still limited by budgets and the clients attitudes toward technology. You are not going to sell a framework based website to a small business owner who wants to tweak things himself after your work is done, unless you are prepared to invest a great deal of time adding a CMS or training the owner how to write code and the logic of the framework.
I guess the point of this article is; don’t get stuck in a rut just because that is all your work demands of you. Keep learning, exploring, and trying new things. If you become dissatisfied with your current employer, investigate other potential employers before jumping ship, or build a website just for you to explore the possibilities. Create a plan, develop relationships, then move at an opportune time. The grass may not be as green as you had hoped once you get there, but the fertile mind will find a way to make it work out.
Example: Dave Ramsey’s development team. http://webmonkeyswithlaserbeams.wordpress.com/