John has a no BS approach which leaves you in no doubt that if you want to succeed in your career as a Software Developer (or anything come to think of it) then it will take hard work and dedication on your part – it won’t just happen.
Now, we all read technical books (or blogs) on a pretty regular basis in an effort to keep up with the ever changing world of technology, but what about those softer skills? Would you really buy a general ‘self help’ book? I mean, Software Developers are special right!?
I have previously read John’s first book, Soft Skills, which I found very enlightening, so when I received an email from John asking if I wanted to read a preview of his new book, The Complete Software Developer’s Career Guide, I hit the reply button straight away. [John contacted a number of his subscribers with the same request – I’m not special in that regard 😉 ].
Now this is a big book – some 800+ pages – so it was going to take a while to read. However, this all coincided with my planned two week holiday so being able to lay in the sun and just read a book for a few days was not going to be a problem.
The book is aimed at Developers at any point in their career – even if they haven’t actually started yet. I’ve been developing for over 15 years at the time of writing this but I resisted the urge to skip the early sections thinking they would be irrelevant and found some of the advise in them very informative.
In our industry it is very difficult to keep up with the tidal wave of technology; what should you learn and what should you ignore. Entering the realm of Software Development must be extremely daunting these days and John helps to distil it down to what you need to know when starting out. Remembering that it is not all about writing code – far from it.
Once you have an idea about what you need to know – how on earth do you learn all this stuff? Well, John has you covered again with his technique for learning things quickly. Obviously you won’t be a guru on the subject but John’s technique is all about identifying what you need to know to be productive and knowing when you have gained that knowledge.
The book covers areas including Source Control, Continuous Integration and Debugging – but not at a technical level. There is no explanation of why you would ‘rebase’ a git branch or how to configure Jenkins. Instead John highlights the needs for expertise in these areas.
For me Sections 4 & 5, Working as a Developer & Advancing your Career, were the most interesting. Being able to code like a ninja is great, but if you can’t function in the workplace then you are not going to realise your full potential as a Software Developer. Soft Skills are important in all walks of life but in careers like ours, i.e. heavily technical, I think that they are vital.
From how to deal with your boss and co-workers, communicating your ideas and how you should dress (regardless of whether others are wearing t-shirts and flip-flops) there’s a chapter for that. There are also chapters to make sure you come out of your annual review walking tall instead of looking at the ground, on negotiating a pay rise and dealing with prejudice and discrimination.
My Final Thoughts
As I’ve already mentioned, I’ve been following John for a while now and have already read the Soft Skills book so I know his style. With that in mind there was a lot of content in the book that I’ve either read before (on his blog or his previous Book) or watched on his YouTube channel.
So, I think that the book is a waste of time – yes?
Not at all. There was so much content in this book that I think every developer should have a copy (and John is not paying me to say that).
Throughout the book there were times when I found myself thinking “am I doing that and if not why not”. Other times I found it reinforcing what I already do in my professional life – from the way I dress at work to the way I interact within a team. This was valuable insight and empowering to me – knowing that I was not just being eccentric.