Blog posts

Getting to senior

Business woman climbing up on hand drawn staircase

You got your first job as a developer. Worked for a couple of years. As time goes by, you start asking yourself “What next?”. I’ve got an answer for you.

If you are a junior or a mid-level developer, then your immediate career goal is to become a Senior Developer. Here is how you do that.

Malcolm Gladwell famously popularised a ten-thousand-hours rule in his book “Outliers”. His book was based on research by Swedish psychologist K. Anders Ericsson who studied top performers in different fields. Gladwell wrote that it takes ten thousand of practice to get good at something. Ten thousand is neither a magic number, nor it is exact. It simply means that that it takes a really long time to get good at what you do.

Read more →

Road Ahead

It’s been nearly a year since I wrote that post: A new chapter. During that time I did a bit of traveling, spent a fair amount of time slacking off at the beach (you can’t resist that during summer time in Australia), but most of all I was studying. I was keen to deliver on my resolution to pick up lasting fundamental skills.

Road Ahead sign

As I already had an experience with online education and found it as good, if not better, than in-person training, I went for online courses again. There is no shortage of opportunities for online learning for anyone who wants to pick up new skills, especially in technology: Coursera, Pluralsight, Udemy, Lynda.com, just to name a few, provide lots on online courses covering a wide variety of technologies. Most of them are very affordable or even free. I listened to a few lectures on Coursera.org before, however I never took them seriously. And just when I was deciding what to learn next, an email arrived into my mailbox advertising a brand new Full Stack Web Development Specialization. In Coursera’s lingo, a specialization is a sequence of related courses which progress you to a particular goal, in this case – becoming a full stack developer, i.e. a developer who is capable of creating both back-end and front-end sides of a software solution, in this instance in JavaScript. That specialization was advertised to include the following courses:

and an optional capstone project, where students could apply the newly acquired skills to build a real-world software product.

Although I already knew some of these topics, I decided to enroll for that specialization anyway. After all, reiterating the fundamentals never hurts. A part of my resolution was to acquire fundamental skills which do not depend on a single vendor. And the web is as fundamental as they get. The web is everywhere, it has become the application platform, and web frontend has become the front-end. I agree with Atwood’s Law, stating that “any application that can be written in JavaScript will eventually be written in JavaScript”. Over the years I’ve watched the meteoric rise of JavaScript from the sidelines wishing I could make a career turn and concentrate on that brave new world. Well, now I had a chance.

Before I’ve got stuck in the Oracle swamp, I used to build UI applications. That was what I did well and enjoyed doing. At those old times, UI meant C++ with MFC, Delphi, Visual Basic, or some similar old tools no one can recall now. And since I decided to take a career turn, I wanted to get back to UI. But since UI now universally means web applications, I had to become an expert in web development. I took a plunge and enrolled for the Coursera’s specialization.

The next few months were intense. At first I thought I could learn at a leisurely pace at Coursera, and if I’m bored I’ll pick up some other courses to do at the same time. But instead, I found that Coursera’s stuff was full-on. I had to watch the lectures, read a lot of supplementary materials, do assignments and turn them in each week. And because I wanted to obtain an in-depth understanding of how everything worked, I was studying nearly full time. Then I had to verify other people’s assignments – Coursera has a peer-to-peer assessment model, where each student has to grade assignments of 3 other students each week. That is clever, and I found that I learned as much from other student’s fork as from my own study.

In the middle of the second course I was doing, Coursera suddenly changed its business model. It used to be all free for everyone. Now anyone who wanted to get assessed and graded had to pay. I still could watch all the lectures for free, but my assignments wouldn’t be graded and I wouldn’t get the course completion certificate. After some consideration I chose to pay – it wasn’t that much anyway.

To cut a long story short, that was quite a ride. Now when it is all behind me, I wholeheartedly recommend that specialization to anyone willing to learn about web development. You may take all of its courses to learn everything you need to know to become front-end or back-end web developer, or pick individual courses to suit your learning needs. Either way, it is an excellent value for your time and your money.

In a few days after I finished the last course and updated my resume, I had a new job as a front-end web developer. It is a new direction for me, a new road ahead. I like it, I think I’ll stay on it for a while.

Focus

Focus

I listen to a few podcasts every week. These are weekly shows I’m subscribed to and listen to every episode. My most favourite one is Freakonomics Radio. I love that show because every week Stephen Dubner and Steve Levitt take ordinary ideas we are so used to that we don’t even pay attention to them, and turn them on their heads. Just like Mythbusters blow things up “for science”, the Freakonomics’ authors turn conventional wisdom inside out, all in the name of economics. I love their show, and I think you too should subscribe and listen to every episode they produce. But if you have time for one episode only, you should listen to the one called “The Upside of Quitting”. In fact, it is so great that even if you have no time at all, you will still have no excuse for not checking it out. In that episode they put forward an unconventional idea that sometimes quitting may be good for you.

‘Really?’ you might ask, ‘After all that Winners never quit and quitters never win?’ 1

Indeed, the modern culture paints an image of successful people as someone who always persist in their endeavours no matter what. While I’m not saying that it is entirely wrong, (in fact, that course of action may even be correct most of the time), but still sometimes it is wrong. The problem with persisting no matter what is that after some time you may forget why you’ve been doing what you do. You lose focus. In that case you need to stop and ask yourself why are you doing that. And if you can’t answer, then the best thing you can do is to quit. The most valuable resource we have in our lives is time. No matter how rich we are, we can’t buy more than 24 hours a day, and we can’t buy additional years of life, at least not yet. And the things we do consume our time, they eat away the time of our lives. So, why would we spend our lives doing things unless they give us something, unless they bring us closer to our goals?

We all have goals in life. The goals like “exercise more”, or “become financially independent”, or “spend more time with our families”. In order to reach our goals we need to be focused on them, dedicate our time to them. And because our time is limited, that means we have to stop doing anything that sabotages our goals.

Don’t get me wrong, I’m not saying that it should be all work and no play. We all need time to rest. Taking time off and having hobbies is ok. But if you’re playing, you need to clearly realise that you’re indeed playing. If you’re watching TV then, unless you work in a TV industry, you are most likely not doing it for your career. Likewise with hobbies: they are something we like to be engaged in, but they don’t bring us closer to our goals. If we don’t understand that, then those activities end up consuming too much of our time, and instead of bringing us closer to our goals, they take us further away.

I’ve quit a lot of things in my life. But I didn’t realise why I wanted to quit them until recently, it just felt like the right thing to do. However, nowadays I apply a ruthless framework to everything I do: I ask myself if I know why I do what I do, and if it brings me closer to at least one of my goals (and I have many). And if I can’t answer that question, I quit.

A few years ago I quit Aikido after dedicating more than 10 years to it. And for the last couple of years of those 10 I couldn’t explain why I was still training. I didn’t enjoy it any more, it wasn’t that good exercise and I felt like I stopped learning anything from it. Then I realised that I just kept doing that because it became a habit. Just a habit with no real reason behind it. And the moment I understood that, I quit. Instead of Aikido I joined a gym and yoga sessions. Gym provides more intense workouts within shorter sessions, and yoga for me has all the advantages of nurturing mind-body awareness without the Aikido’s downsides. I’d like to emphasize that it is my personal experience, it made sense to me, but for someone else an opposite direction might make more sense.

So, if you’re doing something and you don’t know why, why don’t you stop and ask this question, And if you can’t find an answer, then maybe it is time to quit.


  1. Vince Lombardi. (n.d.). BrainyQuote.com. Retrieved September 25, 2015, from BrainyQuote.com ↩︎

A new chapter

Today I was informed that my position was made redundant. I have been here for 3 years and I enjoyed it, but it will soon be over, and I will be on the market again looking for new job. I am a bit disappointed but other than that I’m fine – I’ve been through that before. When something ends, it also manifests a beginning of a new chapter. There is no use to obsess over what has already happened. Instead I need to look into the future and decide what I am going to do next.

As I know from my previous experiences, it starts with a feeling of euphoria. When a job ends, I would be overwhelmed with a feeling of freedom. “This time,” I would think, “I have a chance to find a job I will truly love. Oh maybe I will start my own business. I can do whatever I want — the sky is the limit!” But not long after that I would start applying for jobs exactly like the one I had before. After a few weeks a depression would slowly creep in. By that time I would be spending most of time on the job boards frantically refreshing the search page trying to pick up job ads which have just been posted. I would apply for multiple jobs a day, and still would be getting very few, if any, replies. Then after another couple of weeks I would become desperate. And the feelings of freedom and purpose I had in the beginning would be long gone…

However, I decided that this time it will be different. Here’s what I am going to do:

1. I will take time to learn new skills.

I have a few rare skills which used to pay good money, but the demand for them was falling over the last few years. In order to stay employable I need to increase the size of my professional markets, and that means learning skills which are in demand.

2. Whenever possible, I will avoid product-specific skills and concentrate on fundamental skills instead.

Specialising on particular product can be extremely financially rewarding. Specialisation allows you to build better skills in your particular area. And almost in any area highly skilled professionals earn more money. The problem with this approach is that the vendor of the product you are concentrating on may go out of business, or the product may become obsolete, and with that your expertise will become obsolete too. And for a professional with a narrow specialisation field it may be very hard to retrain into another knowledge area.

Fundamental skills, on the other hand, provide more breadth of application. Those are skills like programming languages or widely adopted platforms which are supported by more than one vendor. The best fundamental skills to adopt are the ones which present popular rapidly evolving technologies. Although it may be hard to keep up with them, it is unlikely that they will come out of existence soon.

3. Once I learn something, I will keep learning.

I enjoy learning almost above anything else. Whichever new professional field I choose, it will be the one that will force me to learn new things all the time, keeping me on my toes. That will satisfy my hunger for learning, and will increase my expertise at the same time. Hopefully it will result in better remuneration as well.

4. I will be selective about permanent job offers.

Although contract jobs may last for a long time, they are by definition temporary. Contractors agree to forego bonuses, salary increases, paid annual and sick leaves. In return, they are usually compensated for those things with money. Because company-driven career grown is mostly thing of the past anyway, I view contracts as more fair arrangements. Therefore, I will try to avoid dead-end permanent jobs. Instead I will prefer contracts or permanent jobs which present opportunities to learn valuable skills or provide genuine growth paths.

That’s it, quite a manifesto. I will report back here on how it is going.