DEV Community

Cover image for How to become a sought-after professional?
Laura Suzany
Laura Suzany

Posted on

How to become a sought-after professional?

Today, I've been thinking about how to become a highly qualified professional and, consequently, in high demand. I asked for some tips from ChatGPT, and it provided me with a few. However, I would like to hear your opinions here in the 'dev' community. Regarding soft skills and hard skills, my research question for GPT was as follows: 'What do the biggest and best companies in the world look for in a programmer?

Top comments (5)

Collapse
 
taikedz profile image
TaiKedz • Edited

First off : biggest and "best" companies don't have any better metric for determining a good programmer. Sure they've got their technical tests and weird interview questions, but at the end of the day:

  • your salary should increase over time. Highlight your wins at review time. Explicitly ask for a raise at least yearly. For every new job, set your expected salary decently above your current salary. You don't need to tell anyone your current salary. Respond: "I am seeking X amount, I'd like to keep the conversation to that please."
  • define best company: "it's a household name"? "it pays lots"? "it has a positive impact on the world"? "it treats its employees fairly"? "the team I will join seem like decent people"? A lot of these do not overlap.

More importantly, once you get to the financial spot you are comfortable with (no more financial stress, can save a bit), a more important question is raised: not where do I want to work, but what kind of people do I want to work with? Suss this out at interview - you are interviewing the hiring manager and team, just as much as they are interviewing you.

two beers and a puppy: how does a person measure up to each?

As for pointers, off the top of my head:

  • Practice, practice, practice - It's of course not an overnight result, but practice allows you to cement your knowledge. It must however come with growth:
  • Seek to be better than you were - 10 years of experience means nothing if you only ever experience the same thing over and over. If you come back to your work 6 months later and can strongly feel "I would have done that differently if I could do it again," then you're improving. It's what matters
  • Learn beyond your tasks - work will only give you so much - often asking you to solve problems in ways you or your colleagues already know how to solve. Find ways to take time to learn new things on the job, even if nobody asked you to. In this way, you stand out from those who "just get the job done." That is valuable in and of itself, but is insufficient if your goal is to be highly sought after.
  • Speak up - if you think something is not optimal for the problem at hand, speak up! Be "that person" who highlights the problems. Yes, it can create difficult conversations, but anything worth doing will have different opinions. Just make sure to bring yours forward backed by reasoned thinking, through clear and respectful communication. People who care are more valued and sought than people who just do as they're requested to.
  • Set boundaries - all the above is hard work. If you are to have longevity in your career, learn to say "wait" and "not in this way" (or, outright, "No"). Half an hour overtime every day can eat into your life, sapping your energy day-by-day. More than that will drain you even faster. You are more valuable with a clear mind than with a spent mind. Sometimes very important requests come in. Work with the appropriate people to know what to drop to take on new tasks.
  • Bonus: have non-work items to show for and include them on your CV. Not everybody has energy for this, and it doesn't mean you're better - just more discoverable:
    • write a blog of what you learned, what was difficult, what you overcame, even in non-dev areas. Even three or four paragraphs will do.
    • have a couple of projects in a github/gitlab/gitea showing the current way you code. Doesn't need to be complicated - something that manages common tasks (note taking in TXT files (command-driven or with a simple web UI), common-commands manager (why keep a command cheat sheet if you can maintain a handy tool?), local RSS aggregator and filter... simple stuff)
      • something that you can maintain for just 30min per weekend.
    • organise meetups or clubs. Even an informal "monthly cafe get-together for [devs/runners/knitters/etc]" in your locality - showing a community-minded interest.
    • None of this "makes you better" - you demonstrate that at interview - but it makes you more discoverable and noticeable by head-hunters. Your CV-writing, cover-letter-writing, and interview technique are still more important.

The size of the company will give you a flavour for "a company of that size," but you can gain lots for working in a variety of companies, and carry those experiences forward to enrich you further - both your hiring appeal and your self worth. Work in small companies, big companies, for-profits, non-profits, social-enterprises, university departments, startups... whatever comes your way that engages your interest.

Why should we hire you?

It shouldn't be about the tech stack you have. That's on your CV. Talk about how you've enabled colleagues. Talk about the diversity of your experiences and the insights you can bring. Talk about your principles - making X better, making Y more approachable, bringing more Z into the world.

Collapse
 
rafaftahsin profile image
Rafaf Tahsin

There should have some option to bookmark your comment. Great insight...

Collapse
 
taikedz profile image
TaiKedz

And lastly: don't bad mouth other people.

If you are pushed to critique something/someone, focus on potential improvements, not on describing existing shortcomings.

Collapse
 
mirzabilal profile image
Mirza Bilal

You summed up a very awkward question for many in a single line, "I am seeking X amount, I'd like to keep the conversation to that please." 👏

Collapse
 
syxaxis profile image
George Johnson • Edited

Multifaceted, that's always worked for me.

I started coding as a kid in the 1980s, taught mysefl assembler when I was 14, used to crack PC games and software in the late 1980s. I learned Novell Netware at the place my Dad worked when i helped him install it when I was 17. I also helped him design and deploy a customer management database on DataEase/Novell. I worked as a mainframe tape loader for 6 months, then I secured a proper job as an overnight Op doing PC installs, backups, all the time I was coding. Someone offered me a role to train as an Oracle DBA back in the late 1990s as I was designed so many useful overnight improvements. I've coded in about 20 different languages, I've worked on Solaris, Linux, HP-UX, AIX, Oracle, MySQL , PostgreSQL, Informix, coded Java, C, C++, Perl, Python, Go, to name just a few of the things I been involved in. These days I worked as an business/infrastructure automation engineer, basically linking loads of different technologies together by way of IaaS/SaaS type technologies.

All this was explained to state that for me being a "jack of all trades" has always kept me in demand, I've constantly been flexible, hardly ever said no to any challenge or job opportunity, even when the odds of success were slim.

Gaining experience in as many fields as you can will keep you flexible and ensure that when you pass your CV to anyone and it shows you've been involved in many, many tech disciplines, you will be offered lots of choices and be able to choose the ones you like most.

I'm not saying it's easy, I'm not saying I have any sort of insight or answers, but my little plan to be a "jack of all trades" has kept me in very well paid tech jobs for almost 35 years and counting.

The upside is that you're never bored! I'm still as excited by learning new tech and new ways to do things, new software, always excited to start new projects and see how much I can learn during them, that's the real payoff for me personally. I've only lost my "fire" a few times in the last several decades but quickly gained it back.