PC#3 - Skill Diversification is Career Saving

Free Kubernetes Resource + Building ChatGPT Powered Apps

I knew we were in big trouble.

It was raining cats and dogs outside.

But the rain wasn’t the concern.

The concern was a recent announcement by the management about the company selling off its business unit.

My team was part of that ill-fated business unit. Naturally, most of the team members (including me) were worried about their future prospects.

Is the company going to retain us or kick us out?

My manager called me for a 1:1 meeting.

I was skeptical about what he wanted to say. In fact, I considered making an excuse to not attend.

Luckily, I didn’t make that stupid excuse.

Because in that meeting, my manager gave me one piece of advice that changed the trajectory of my career.

Here are the words as close as I can remember them (it was 10 years ago):

“Companies will come and go. Sometimes, you’ll leave companies. Sometimes, companies will make you leave. But your skills will always be with you.”

A Good Manager

This advice practically transformed the way I looked at my career.

I changed from a fear-driven developer to a skill-driven developer.

No longer was I worried about my impression and the company’s future strategy. Instead, I became more confident about my own skills and abilities.

This exact thought resonated a lot with people when I posted this on Twitter.

So I think it’s an important factor for a lot of developers out there. Here’s the tweet in case you are interested:

However, like all great advice, this one also had a fair bit of nuance.

To be confident of your skills and abilities, it was imperative that you keep developing and growing those skills.

But building deep expertise in one particular skill is just a part of the puzzle.

It’s also important that you diversify your skillset.

Let’s take an example:

  • If you are a backend developer, why not build a minimal understanding of how frontend development works?

  • If you are a web developer, why not build some understanding of how code is deployed on a server?

  • If you are a good programmer, why not spend some time understanding the business domain?

  • If you enjoy system design, why not develop your presentation skills that can help you communicate your ideas better?

Diversification is not as hard as you think. But it can literally save your career.

It saved my career multiple times and helped me grow my salary by 6 times in 2 years just because I was always learning new stuff and picking up new skills along the way.

I recommend trying to diversify your skills in whichever phase of your career you might be in.

To begin with, just take small steps to learn how things work beyond your immediate circle of responsibilities.

You never know what opportunities may be waiting for you on the other side.

Free Resource - Introduction to Kubernetes

With the theme of skill diversification, just wanted to share some free stuff with all of you in today’s edition.

As you might already know, Kubernetes is the beating heart of the Cloud Native landscape.

But getting started with it can seem complicated.

To make it easy for you to learn more about it, I’m sharing a short 11-page Introduction to Kubernetes.

It covers:

  • The high-level architecture of Kubernetes

  • How do developers interact with Kubernetes?

  • The most-used resources while deploying applications on Kubernetes (with code snippets)

Here’s the link to the PDF file.

Hope you find it useful!

And do let me know in case there are more specific areas you want me to cover.

LangChain - Building Applications Powered By Large Language Models

LLMs like ChatGPT are making all the waves in the industry.

However, you can make the LLMs even more powerful using LangChain.

But what exactly is LangChain?

LangChain is a framework for building applications powered by LLMs like ChatGPT and others.

The framework is open-source and allows AI developers to combine LLMs like GPT-4 with external data.

It’s available as packages for languages like:

  • Python

  • JavaScript (TypeScript)

One of the coolest applications of LangChain is that you can apply it to your own data (like a PDF file or a report)

Such an application has two important parts:

  • Storing large amounts of data in a Vector Store.

  • Using LLMs like ChatGPT to answer queries from that data.

Let’s look at both parts:

Storing Large Amounts of Data

A typical LangChain flow looks like this:

  • Take a large amount of data (say a 60-page PDF)

  • Break it into chunks

  • Embed the chunks into a Vector Store.

Using LLM with the Data

Once the data is vectorized, you can use it with the LLM to get the required information.

The process has the below steps:

  • Insert prompt.

  • LangChain queries the Vector Store for the information.

  • Use the retrieved information with the prompt to feed to the LLM.

  • The LLM generates an answer.

Here’s what the entire thing looks like in practice:

The applications of LangChain are really interesting. You can use it to implement:

  • Questions answering queries from specific documents

  • Chatbots

  • Agents

Here’s the link to LangChain’s GitHub repo in case you are interested in exploring more about it.

That’s it for today.

Have a great weekend and see you next week.

In case you want me to cover any specific topics in future editions, please fill out this form to suggest ideas.

Reply

or to participate.