LOGO

Grow Your Tech Career Like an App | Career Development

July 30, 2021
Grow Your Tech Career Like an App | Career Development

The High Demand for Software Professionals

Currently, the demand for software developers and engineers is exceptionally high. The need for skilled technical personnel within organizations is rapidly increasing. However, the available talent pool remains limited.

Consequently, software professionals often have considerable choice in their employment and typically receive substantial compensation packages.

Developer Statistics in the U.S.

According to the Bureau of Labor Statistics, in 2020, the United States employed approximately 1.5 million full-time developers. The median salary for these professionals was around $110,000.

The federal agency projects a 22% growth in developer jobs over the next decade, adding an estimated 316,000 positions.

Beyond Landing the Job

But what occurs once a developer or engineer secures a desirable position? Are they equipped to leverage their abilities and progress in stimulating and challenging directions?

Do they possess a clear understanding of the requirements for career advancement? Are they simply fulfilling job duties, or are they actively building a fulfilling professional life?

A Common Career Management Deficiency

These questions have been a recurring theme throughout my 25 years within the technology sector. I’ve observed that many developers and engineers struggle with effectively managing their own careers.

For some, career planning isn't a priority. Developers often find satisfaction in tackling intricate technical problems and contributing to their company’s digital goals.

Perceptions of Self-Promotion

Focusing on their own career progression may seem uncomfortably self-serving or politically motivated—despite being neither. They might feel uneasy about charting a career path or simply lack the knowledge of how to proceed.

Organizations have a responsibility to provide developers and engineers with the resources needed to maximize their potential, benefiting both the individuals and the company.

The Need for a Formal System

While coaching and mentoring are valuable, I believe a more structured management system is essential to foster a company-wide commitment to developer and engineer growth.

This system should empower them to embrace the philosophy articulated by the late Andy Grove: “Your career is your business and you are its CEO.”

A Career Development Model at Intel

During my time as an Intel Fellow at Intel (2003-2013), I developed a career development model specifically for developers and engineers.

This framework has since been implemented at Google, VMWare, and Juniper Networks—my subsequent employers—through training programs and HR initiatives.

Treating Career Advancement Like a Software Project

The model is founded on a principle that resonates with every developer: approach career advancement as you would a software project.

By framing career development in stages similar to those used in application development, developers and engineers can gain a comprehensive understanding of their current professional standing, their desired future state, and the skills they need to acquire.

Defining Career Expectations Through Functional Specifications

Similar to software development, a clear understanding of required capabilities is crucial for career progression. A functional specification, outlining an application’s needs and expected performance, is essential before any coding begins.

The same principle applies to career paths. Individuals should first evaluate the “functionality” – the skills and behaviors – anticipated at their desired career level.

This assessment should determine the extent to which these functionalities are currently being exhibited. Promotion generally occurs when an individual consistently demonstrates performance aligned with the next level’s expectations.

Characteristics of a Maturing Professional

For instance, professionals with three to five years of experience, categorized as “proficient/maturing,” should showcase a robust grasp of technical disciplines.

Increasingly analytical and independent thought processes are also expected, alongside initiative, creativity, and a favorable standing within the organization.

Organizations meticulously define requirements for software projects from the outset. However, a comparable level of diligence is often lacking in the management and development of their engineering and developer teams.

Skipping this crucial step in personnel management can hinder growth and lead to misaligned expectations.

  • Technical Expertise: A solid foundation in one or more technical areas.
  • Analytical Skills: The ability to think critically and solve problems independently.
  • Proactive Behavior: Demonstrating initiative and a willingness to take ownership.
  • Reputation: Maintaining a positive professional image within the company.

By adopting a functional specification approach to career development, organizations can foster a more structured and effective path for their technical personnel.

Design Document: A Detailed Development Plan

The design document represents a comprehensive plan for software development. While the functional specification clarifies what the software will do, this document details how it will be achieved.

Within a career development framework, this stage translates into a formalized action plan. This plan, mutually agreed upon by both employees and their managers, outlines the specific requirements for professional advancement.

Key Areas for Development

  • Is enhanced technical expertise necessary?
  • Would improvements in communication skills be beneficial?
  • Is fostering more innovative thinking a priority?
  • Does the role require mentoring and supporting junior colleagues?

Individuals in development and engineering roles frequently demonstrate a preference for concrete problem-solving. They typically begin by pinpointing the core issue before addressing it in a logical, step-by-step manner.

The initial stages – functional specification and design documentation – mirror this approach when applied to career progression. Following these planning phases, the focus shifts to implementation.

Step 3: Implementation

This stage can be likened to the coding portion of a professional journey. Developers and engineers should integrate the insights gained previously into their daily tasks and responsibilities.

Furthermore, proactively seeking opportunities for growth through challenging projects and relevant training is crucial for continued development.

The principle of “C.H.I.P.” – encompassing competence, high energy, integrity, and perseverance – serves as an excellent guiding philosophy for individuals in this implementation phase.

Understanding the C.H.I.P. Principle

  • Competence: Possessing the necessary skills and knowledge to perform tasks effectively.
  • High Energy: Approaching work with enthusiasm and a positive attitude.
  • Integrity: Maintaining ethical standards and honesty in all endeavors.
  • Perseverance: Demonstrating resilience and determination in the face of challenges.

By embodying these qualities, professionals can maximize their impact and contribute meaningfully during the execution phase of their careers.

Step 4: Validation and Deployment

Software is never launched without rigorous testing, and sustained career growth is difficult to achieve without consistent follow-through. This process often involves regular progress tracking with a manager, typically on a quarterly basis, incorporating updates based on achievements and received feedback.

Crucially, this stage necessitates focused stakeholder management. Effectively managing stakeholders throughout the organization is vital, and the scope of this group is often wider than initially anticipated.

Stakeholders encompass not only direct colleagues who should acknowledge the developer’s or engineer’s contributions, collaborative spirit, and initiative, but also their manager and the manager’s superiors.

Furthermore, individuals like product managers and sales engineers can offer valuable insights into the employee’s influence on products and customer satisfaction.

This network of stakeholders cultivates a supportive community that amplifies accomplishments and generates positive recognition.

While securing a position may be straightforward for skilled developers and engineers, long-term career development can prove challenging. However, as demonstrated by this approach, sustained advancement is entirely attainable.

#tech career#career growth#career development#tech skills#app development#iterative improvement