August 19, 2022

Certified coder

Previously I’ve written something generic about getting into a new profession. In this post we’ll look at certifications for becoming a software developer.

Just know the minimal

During my career I’ve come across recently graduates from other fields that managed to be hired as a developer who (in my opinion) had very few skills. For example a guy that only knew how to write Python in Jupiter notebook and didn’t know how store it as a file/script and make it executable. In my career I’ve seen website developers (HTML) or data analists who were having very little skills or very narrow, but still were able to get hired as a developer enabling them to start growing while working.

Constraints

If money or time is a constraint, keeping you from doing a full blown education or courses, you could learn on your own terms (every IT subject is available online for free to learn).

Certification (exams) allows you to study on your own and prove your knowledge.

Focus

If you’ve done a physical job in the past and want to transition to coding, know that it can be like studying. You need to be able to sit still and focus for a whole day.

Some things that help me personally;

  • Diet
    • intermittent fasting
    • low carb diet (avoid blood sugar fluctuations)
    • maximize eating monounsaturated fats over polyunsaturated
    • proper hydration (3-4L of water)
  • Dopamine
    • dopamine detox from time to time
    • not being active on social media (dopamine sensitivity)
  • Mind relaxation/recharge
    • take physical (walking/sports) breaks from work
    • sleep 8-9h for optimal focus
  • eliminate distractions
    • put phone notifications off (only SMS and call)
    • good headset with non distracting music (e.g. no lyrics, classical music)
  • stand/sit desk
  • etc.

Someone asked me for help on studying to code. Honestly, when I’m working from home or studied during my education, it’s 95% self study/stackoverflow. Companion is often more distracting than helping. If you need someone as an external motivator during your work, you might lack intrinsic motivation or focus.

Don’t learn everything

Be mindful when starting to pick up a topic, it might not always be worth studying.

For example, on the desktop market, Windows is the dominant player. However, for getting a certification for being a developer, getting some Linux certification will match way more job opportunities than one for Windows Server. Linux is free to download while Windows Server costs money, thus there might be more marketing for certification for the one you should avoid. With software, there are a lot of open source (free to use) systems that are preferred by many professionals but will have less marketing than their payed counter parts.

Another example is Splunk vs. ElasticSearch. The developers that I’ve spoken with, that have worked with both, always preferred ElasticSearch. However, big corporates don’t always go for the best product, but the best marketing/SLA. Thus also know that for some jobs, it could be useful to familiarize yourself with systems that you would personally avoid when creating your own software platform, but big corporates would use (if you would want to work for one).

Materials

Me compiling a list here would be useless, since there are better resources already online.

But let me give some overall information on what you might want to learn, even if you won’t spend money on getting certified;

  • One of the big 3 cloud providers
    • AWS, biggest cloud provider
    • Azure Biggest cloud provider for government and banks in NL, due to the data being stored in the country
    • GCP
  • Some Linux skills (working on a command line over ssh)
    • LPIC, good price
    • Redhat (expensive), paid linux distro used in big corporates, but you likely only need a certification if you want to be a system administrator (which you likely don’t want to be)
  • Data analytics
    • ElasticSearch
    • Splunk, non open source tool that I wouldn’t use for my projects, but I’ve seen being used in big corporates I’ve worked for
    • Databricks
  • Programming language
    • Python PCAP (skip PCEP)

Know the lingo

When applying for a job, it’s fine if you’re not mastering all skills yet. However, know all the lingo. Know all terms on the vacancy and look up all technical terms/techniques mentioned in a future colleague’s resume, so you understand their background, lingo and perspective.

For example, if you’re not a network engineer, you don’t need to know the 3 way handshake of TCP. But most developers should know the difference between TCP and UDP.

Blog by lent.ink