“One’s education is never complete. A missed opportunity doesn’t preclude the possibility of new opportunities, or even better ones.”

Michael J Fox

Everyone should take responsibility for their own professional career development whether or not they get support from work to do so.

I’ve detailed my approach to career development which is broken down into four pillars listed below.

Contents

Leadership

It is important to demonstrate leadership no matter what role you are in. Even if you are not given the title of Manager or Supervisor or Lead, and even if you don’t have people to manage, you can, and should, still demonstrate leadership.

Leadership is all about:

  • Using the right side of your brain: being organised, tidy & efficient (following concepts like 5S ), being emotionally intelligent and aware, developing creative solutions.
  • Having a project management focus: following sound project management techniques and conducting each bit of work as a small project.
  • Writing Well: following known writing guidelines. Documenting every bit of work. Sharing all knowledge and information.
  • Communicating Well: Documenting well. Communicating progress and issues in the right format at the right time.
  • Team Building: establishing productive relationships with members of teams working in and with. I can’t emphasise how important this is.
  • Finding Informal Career Mentors: always indirectly looking out for people who you can chat to informally about career stuff. This is where I have discovered great leadership styles and techniques.
  • Being ethical: Making sure you provide value and are honest in everything I do.
  • Sticking up for others you work with: Making sure that your fellow team mates are well supported.

Concepts

The Concepts pillar is all about the concepts and theories behind software design, development and testing. This is the stuff that you typically learn when studying software engineering at University and is generally timeless.

Concepts is about ‘understanding’

  • Understanding Software Development Methodologies: how IT software design and development works as a whole.
  • Understanding Software Projects: how IT software projects work.
  • Understanding Programming: knowing programming concepts and techniques.
  • Understanding Testing: understanding testing best practices, test driven development, test automation, acceptance testing.
  • Understanding User Centred Design: focusing on usability and designing for users. Paper prototyping and iterative design.
  • Understanding Design: understanding general design principles.

Tools/Technology

This pillar is essentially the tools required enable the ‘Concepts’ above. These are different from concepts in that while most concepts are timeless, the tools or technologies tend to change. You can start focusing on developing skills in using open source tools. I find these are good in that they are open and free ( as in speech ). Some tools I know and/or use are:

  • Programming Languages: such as JavaScript, Ruby, Python, C#.
  • Testing Tools: such as Selenium and Puppeteer
  • Collaboration Tools: such as wiki’s, defect management, blogs.
  • Versioning Tools: such as Git, GitHub, Bitbucket.
  • Web based development technology: Single Page Apps, Microservices.

Business-focus

It is important to understand the business of where you work, as well as the applications that support the business. Even open-source projects have business, they are in the business of providing software developed by communities of people to be used by other communities of people. I often see IT staff that do not have understanding or respect for the business. Displaying a business-focus means:

  • Understanding business goals: why I am employed in the first place.
  • Understanding business applications: what they do and how they fit into the business processes.
  • Understanding business processes: how business is conducted, with or without IT.
  • Understanding how business and IT collaborate and partnership: Hoping that the tail doesn’t wag the dog!
  • Providing value to the business: continuing to be employed.
  • Keeping up to date with the business: knowing what the business industry/competition is doing and about the other happenings in the business domain.
  • Understanding how executive management operates: because they usually pay you and maybe you would like to be there someday.

Conclusion

Like any contextual approach, everyone’s pillars will be different. This is a good thing. Although sometimes an unbalanced focus on a particular pillar can cause problems in your career. For example, focusing mostly on the Business-focus pillar may mean you can’t easily move jobs into a different organisation/industry when you want to.

What’s worse is not thinking about your career at all. Organisations may consciously develop their staff (as good managers do) but as staff are becoming increasingly mobile and contracted, the responsibility for career development is being pushed back upon the individual. This is when coming up with a personalised, balanced and ordered career development framework (and continually revisiting it) is so important.

“Nobody gets a straight shot to the top. Life is not linear. There will be detours along the way. For the curious, new clues will await at every turn and may keep pointing toward the chosen destination. Or maybe you’ll stumble upon information that will inspire you to change course altogether, delivering you to a future you never could have imagined.”

Michael J Fox