Career progression guideline – effectively acquire skills
This part in #careers, I will write about the way to effectively acquire skills which help accelerate your career progress. I wrote about my own progression framework, which consist of 2 major key points — skills and scopes that play a vital part of prohibiting or allowing anyone to grow.
TL;DR: Acquiring skills by doing the real job. Always keep looking for more challenging tasks, projects, and expand scopes. Asking someone more expert to be your mentor and learn from them.
What's wrong with the way of learning
I have done some experiment about knowledge sharing. I shares knowledge, interesting topic, trends to the team regularly (e.g. weekly or bi-weekly). Here's what I did and observed.
- The knowledge that has been shared is not being use soon.
- The team understand the idea at the sharing moment.
- The team still told me that they understand even if the piece of knowledge is a bit of abstract. For example I shared about a strategy to write test that heavily inspired from functional programming.
- 3-4 weeks later, there's a task that suits to use the idea shared previously. The team just forget it so I have to share again.
- I collect feedback which told me to give more concrete example. I did it but the result is the same, they cannot actually use it.
- I know more about the subject that was shared because I need to prepare it but I believed the team won't because they just listen to it.
- What I shared mostly based on my own experience. I use it to do the real job, see the result, sometimes if it doesn't work then I just throw it out.
From the observation, knowledge sharing by just listening from expert won't work. The listeners are able to learn the concept but they are not acquiring skills into the level of being able to really use it.
In order to finish a piece of work, the person has to have an ability to demonstrate the skill, adapt, and solve an any unexpected problem. You can't swim by reading from books.
Your career cannot be advanced if you are only able to talk about skills. You have to done something and it is required the skill.
What to do instead?
Instead of learning like a school where a teacher gives a lecture, we can learn a new subject just-in-time or on-the-job. This is the best time for a person to concentrate on the subject and put thoughts and creativities in order to finish the job.
Everyday, you and your manager have to maximize the learning by assigning a task which have to balancing between practicing a person's skills to become an expert vs expanding knowledge in a new area.
For example, if you want to become a solution architect, you and your manage can work together with backlogs and let you explore different solutions, do proof of concept with a clear goal of the task. You can also get mentor by another solution architect in your company or work with manager on what he/she is expecting to see. Another example is if you are a web developer and want to learn more about mobile development, you can start working on mobile bug fix and take more challenges as you progress. You can also pairing with a mobile engineer in your team or asking for learning materials support from your company.
I would like to give a tips on learning from materials here: reading is faster than watching a video and don't learn it all, just learn enough for you to do the work. You should also allocate more free time to learn deeper in the subject.
After you have learned a new subject, you should also give a presentation to the team. The goal here is not only about let the others learn from you but it's about communicating what you did and improve your understanding on the subject by thinking in a different perspective.
You can't do it alone
With this way of learning, you have to incorporate with you manager about your goals. The company also has to have tasks that align with your goals as well — if you want to become a mobile engineer but the company is only doing a website, you'd better looking for a new job.
Starting by have a clear picture of skills you want to acquire/learn, then you can optimize your learning. If you don't have a skills list, you should talk with experts who can paint a clear picture so you can choose you own journey.
Hope this help.