After reading the thread on the Salary progression, I realise that I had an average pay but not on the top of my league.
I havent found a thread on the topic on how to keep your skills sharp and how to implement the latest tech into your day to day job in your working hours.
I am at the stage where I need to close the gap between my current skills and the desirable skills I saw in the job offers.
I want to increase my employability to change job and in my field (Fullstack .Net/SQL developer with React, Angular framework) in Finance sector as you have to endure few tests of 1-2 hours before being qualified.
Here is what I am planning to do:
bring as much as inovation possible
train myself on hackerrank.com (hard to find the will to do so after clock in 8 hours)
DevOps in the Cloud
master commands and yaml for docker, kubernetes, Linux
.net 6.0 projects design
As it is more easy for me to find Finance related blog/podcast/youtube channels, do you have any recommandations for newsfeed to follow latest tech ?
Some of the most important parts in my opinion (I have more than a decade experience in software engineering) are not the technical skills (those change so often) but characteristics (growth mindset, open to new things, bringing in inovation/improvements) and the way you approach tasks (breaking things down, thinking about non-functional stuff, asking the right questions to the right people). It helps understanding the whole team roles (business analysis, UX, architecture, testing and so on) and supporting / questioning them to make the product better.
On this kind of topic, it is often require to have good troubleshooting skills especially when you support production applications.
Willingness to dig into the issues to find the root cause of the slowness of your application is hard.
However evaluating communication and characteristic skills are even harder to evaluate during an interview. It took generally few months to assess.
I agree that I learn most skills (DevOps, PowerShell, yaml, Angular, T-SQL) on the job during various experiences but the interviewer will expect them anyway during the interview process.
I had interviews last years and also asked in my former company how they approach them.
I never really had any deep technical questions. There really was a broad spectrum. In a first interview it was usually with either HR or your potential boss getting to know you and if you fit into the company with your character and mindset.
What I was asked (to do) in the „technical“ part.
Write code to solve a (rather easy) issue and talk as through your thinking process → evaluating solution finding, patterns and best practices
What were your last projects, what were the responsibilities and challenges? How did you solve them?
Really basic programming language questions.
Talk about framework x and how you used it in your current project. Show and explain the architecture and some code you wrote recently. General talk about architecture and best practices
One thing that I found out to be very sought after by employers is doing cloud certifications. Showing that you’re able to deploy production-ready pipelines or know how to do DevOps in the cloud would be a great addition to your current skills.
In my experience, I was never learning things or technologies “just for the sake” of learning them or putting them on my resume. Most of the learning I did was on the job, by doing / starting projects which were a stretch. This also has the nice benefit of being payed for the learning and doing it in work time So I’d look for ways how to do these things on the job (or on some other job).
I also wouldn’t wait and learn the skills first and then start interviewing once that is “done”. If you want to change job and field, start interviewing for positions immediately. Fake it, till you make it. Interviewing and negotiation are also skills, one gets better at them the more one practices. So better to interview early and often.
Some points looking at it from the opposite site (I’m doing quite a lot of interviews for tech positions).
I’m interested in experience/real live know how and not book know how (except for junior positions)
everyone can give “standard” answers
reading about it is not doing it
same with certifications, most certifications are pure book know how
give me real examples
be able to explain not just how something was done but why
Mindset/soft skills are key
specific technologies can always be learned
how do you tackle a problem in general
if I throw a problem at you what will you do
do you look at improving what your building
how do you react if things don’t work as you want them
have you worked with other tech people or just worked alone on your tasks
have you worked with other specialties (business, quality assurance, ux, …)
did you have to deal with customers
What drives you
do you actually like what you’re doing or is it only a “job”
do you want to improve yourself
do you want to improve the other people you’re working with
how are you learning
is the position in line with your mid/long term goals?
With that in mind, I would actually turn your question around. What are your interests? Do you want to go more towards devops? Towards architecture? Something else? Where do you see yourself in 5 years? In 10 years?
If you know a direction, try to get experience in that area. Instead of doing courses, I would rather actually start doing something in that area. If it doesn’t fit in your work, maybe start doing a hobby project. But it should be something that actually interests you, not just doing an “exercise” for the sake of it. Doing hobby projects that you’re actually enthusiastic will actually teach you so much real experience that you will never get from reading a book and doing some exercises.