How can you grow your tech career? It's best to treat it as an appRarely have software engineers and developers been more in demand. The demand for technical talent in organizations is increasing rapidly, but there is a very limited supply. Software professionals are able to choose where they work, and often command high salaries.According to the Bureau of Labor Statistics, there were nearly 1.5 million U.S. developers working full-time, with a median income of $110,000. According to the Federal Agency, developers will see a 22% increase in employment over the next 10 year.What happens when a developer or engineer gets that dream job? Can they harness their talents and find new and exciting ways to grow? Are they able to see the bigger picture and understand how to climb up the ladder? Do they want to do a job, or build a fulfilling professional career?Many developers and engineers are terrible at managing their careers.These are the questions that I have struggled with for the past 25 years of my career in the tech sector. I have long observed that many engineers and developers are terrible at managing their careers.This is simply not an area of priority for many. Developers love solving technical problems and working hard to achieve their digital goals. This is by nature. Although it may seem unattractive to be self-promotional and political, taking care of their careers can feel like neither. They may be uncomfortable or unsure of how to chart a career path.Developers and engineers owe it to companies to provide the tools necessary to help them be the best that they can. Developers and engineers can have great experiences, while also enhancing their contribution to the organization.Developers love solving complex problems and working hard for their company's goals. Although it may seem unattractive to be self-promotional and political, taking care of their careers can actually be both.Although mentoring and coaching can be helpful, I believe a formal management system is needed to ensure that developers and engineers see the value in a company-wide commitment to make them believe, as Andy Grove once said, "Your career is your business, and you are its CEO."When I was an Intel Fellow between 2003 and 2013, I developed a career development plan for engineers and developers. The framework was then put into practice by the three companies I worked for, VMWare and now Juniper Networks, through training sessions as well as HR processes.This model is based upon a principle that all developers can relate to: Treat your career advancement like a software project.Developers and engineers can get a complete view of their career by looking at it in stages similar to those used in app production. They can also see where they are now, where they want go, and what gaps they need to fill.Step 1: Functional specificationSoftware development is not possible without a functional specification. This describes the app's requirements and how it should perform and behave.What makes a career different? My model requires people to assess the level of functionality that is expected from their next career position and how they are demonstrating it. A person is only promoted to a higher position if they have demonstrated that they can operate at the level.