The first “real” job that a developer accepts will become the foundation upon which their whole career will be built.
Imagine this: After sending out her resume, Jill lands her first job at an in-house Java shop. The company gives her the tech stack she’ll be using: Java EE, Hibernate, and MySQL and with that, it’s time to get to work supporting their application.
Three years have gone by and Jill is still supporting the same application with the same tech stack. The work is getting monotonous. But where can she go from here? Jill has only worked on a single project with a few technologies. Do you see her problem? Jill can look for a new job at a higher position based on the skills she has acquired, but where’s the challenge? Where’s the growth? If she wants to work with a different tech stack, she’ll likely have to search for another entry-level position to continue to build her skill set.
But, what if that company who hired her had encouraged continuous learning? What if she had gotten to work with several different tech stacks over those same three years? Jill would have built a more solid and extensive foundation to her career.
One way to obtain diverse experience is to join an organization similar to a professional services company, and not necessarily the consulting kind. According to MindTools, a professional services company is “any organization or profession that offers customized, knowledge-based services to clients.” In the technology field specifically, a simple definition could break down to “a company that hires developers to do contract work for various clients.”
At a professional services company, continuous learning is highly encouraged. Developers with 20+ years of experience are willing to teach, and you’ll most likely be able to work with multiple clients which means learning both the programming languages and the business tools to support development.
So why is this so important, especially as a first job? There are several reasons.
1. It can offer twice the experience in half the time.
Think back to that earlier example. Three years spent learning the ins and outs of one company using specific technologies. Imagine if Jill had instead been hired by a professional services company. Her first year she would potentially be on a client project that uses those same technologies (Java EE, Hibernate, and MySQL), but that client contract only lasted for a year. Then what? She is then assigned to a different client that needs a REST-ful web service using the Spring framework. What just happened? Jill was given the opportunity to learn twice the amount of skills in less time than our previous example.
2. Employees are constantly encouraged to learn
These types of companies are constantly encouraging their employees to learn and grow and keep up with new technologies. It makes sense if you think about it. Professional service companies are only selling one thing: services. The more extensive knowledge that their employees have, the easier it is to sell their services.
3. Expert resources are only a desk away.
Developers who have been in the field for 20+ years are usually sitting nearby. Got a question about .Net? That developer two feet away, is an expert. Need some SQL help? That guy across the hall worked his last job as a DBA. And the best thing about it? Most experienced developers want to share their knowledge. At a professional services company, there needs to be a wide range of knowledge so there can be a wide range of clients. These companies thrive when their developers are highly trained on a variety of technologies.
4. Communication skills will expand.
It’s easy to see the benefit of working with different clients to learn new technologies, but what about the benefit of working with different clients to learn about different clients? Because many developers move from project to project, they have the opportunity to learn the business tools of a variety of clients. Maybe one client uses Slack to communicate and JIRA for task management and the next prefers Skype and Asana. Being a developer is two sided. Knowing how to program is just one part. Knowing how to communicate and how to work well with a team are equally if not more important than just being able to write code.
Starting your career at a company that encourages learning and the exploration into different technologies will put you on the fast track to success. For developers specifically, working at a professional services company is one of the next best steps to take.
From Legacy to Leading Edge: Advancing Healthcare Through Legacy App Modernization
The modernization of legacy applications in the healthcare industry represents a particularly acute concern, more so than in any other sector. This article explores why legacy application modernization is a significantly bigger issue in healthcare compared to other industries and outlines strategic steps healthcare organizations can take to address this pressing challenge.
How Can Banks Improve Products for Small Businesses?
Banks are recognizing the growing needs of small businesses are intimately tied to both technological advancements and shifts in consumer behavior. In doing so, they're beginning to tailor their business banking solutions to meet these emerging requirements. In this article, Delivery Executive Kevin Ashworth shares six tools that banks can use to improve their products for small businesses.
Harnessing Technology to Steer Trucking Companies Through Global Supply Chain Uncertainty
A brand new wave of global supply chain challenges is set to significantly impact trucking companies this year. Now, more than ever, companies need to leverage technology to help them navigate these uncertainties. In this article, learn five ways trucking companies can harness technology to manage the challenges they'll face in 2024.
Unlocking the Potential of AI in Enterprise UX
Generative AI use has become widespread for many teams, but have you considered using AI for UI/UX design? For these types of projects, using AI will allow for deeper learning, higher insight and more efficient creative and production processes. In this article, Principal Consultant Ken Otte shares aspects to consider when implementing AI tools in an enterprise UX team.