What Does the Company Need From You?

I am writing this article after reading a lot of Reddit discussions/questions on job search and technologies candidates want to learn. May you have seen them as well like below – 

“What should I learn to get a job?”

“Should I learn Java or PHP?”

“Do I need AI?”

“Should I learn ML?”

“Should I learn React, AWS, Docker, Kubernetes and everything else?”

A lot of freshers and even developers with a few years of experience seem to be constantly worried about what technology they should learn next.

I think the question itself is sometimes wrong.

Don’t think about what you need to learn to get a job. First understand what the company needs from you. Then decide what you need to learn.

What is the company actually looking for?

A company doesn’t hire you just because you know PHP, Java, React, AWS or AI.

They hire you because they need something done.

Maybe they need someone to develop new features.

Maybe they need someone to fix bugs and improve existing code.

Maybe their application is becoming slow and they need someone to work on performance.

Maybe they need someone to improve customer experience.

Maybe they need someone to build internal tools.

Maybe they need someone to work on QA, automation, infrastructure or something completely different.

The technology is how you do the work.

The work itself is the important part.

So before asking, “What should I learn?”, understand what the company actually does and what they are hiring you to do.

Start with the company

If you are applying for a job, spend some time understanding the company.

What does it do?

What product or service does it provide?

Who are its customers?

What kind of problems is it solving?

And most importantly, is this something you actually want to work on?

For example, if a company develops auditing software and you are interested in building software around accounting and auditing, that is useful information.

You could even build a small project around the same area.

If the company is building an ERP product and you are interested in ERP systems, that gives you something to talk about during the interview.

But if you don’t understand or don’t want to work in the company’s domain, that is also useful information.

Not every job is the right job for you.

Then look at the job profile

Once you understand the company, look at the actual role.

Ask yourself a few simple questions.

Do I know the main programming language they are asking for?

Am I comfortable with it?

Is this actually the kind of work I want to do — development, QA, DevOps, support or something else?

What other technologies are listed?

Do I know them?

If not, have I learned something equivalent?

Do I at least understand the basics?

Am I applying for the right experience level?

And look at your resume.

Does my resume actually communicate that I am suitable for this particular role?

This is much more useful than looking at a list of 20 technologies and deciding that you need to learn all of them before applying.

You don’t need to know everything

Let’s take a simple example.

Imagine a SaaS company that provides inventory and order management software to retailers.

They have hundreds of customers and their application is growing.

Some customers are complaining that the application becomes slow during peak hours. The company also wants to add new features and reduce some of the manual work done by its support team.

Their stack is PHP, MySQL, JavaScript and AWS.

They are hiring a junior developer.

The job description says you will work on new features, bug fixes, application performance and internal tools.

What does the company probably need from you?

They need someone who can become part of the existing team, work on PHP code, write SQL, fix bugs and develop features.

You may not know anything about application performance.

That’s okay.

You can learn how performance is measured, what causes slow applications and what tools are used to identify problems.

You may not know what an internal tool means.

Find out what kind of internal tools companies build. Understand the basic idea.

You don’t have to pretend that you already know everything.

Know what you know. Know what you don’t know. Then learn what you need.

What about AI?

This is where I think people sometimes go too far.

If you are planning to build AI models or work on AI/ML development, obviously you need deeper knowledge.

But if your job is to build a normal application that happens to use AI, you may not need to become an AI expert.

For example, if the requirement is to build an AI agent into an existing application, your job may simply involve calling an AI API, sending the right information, processing the response and showing it to the user.

You need to understand what you are building and how to use the technology properly.

You don’t necessarily need to understand how an LLM is built from the ground up.

It is similar to driving a car.

If your job is to drive the car, you obviously need to know how to drive.

It is useful to know basic things like changing a tyre or checking the battery.

But you don’t need to know how to manufacture the engine.

Use the tool you need. Learn how the tool works to the level your job requires.

The interview is not just for the company

This is another thing candidates sometimes forget.

The interview is also your chance to understand what you are actually going to do.

You can ask questions like:

“What will be my role in the project?”

“What kind of technology will I be expected to use?”

“What kind of features would I be working on?”

“What does a typical day in this role look like?”

“Is there anything specific I should learn for this job?”

These questions can tell you much more than simply looking at the technology list in a job description.

You may discover that the company has listed ten technologies, but you will actually spend most of your time working with two or three of them.

Or you may discover that the company expects you to learn something after joining.

That’s useful information.

Think about getting to a destination

Think about it like travelling somewhere.

First, you decide where you want to go.

Then you decide how to get there.

You don’t get into a car without knowing where you are going and start driving randomly.

The company and job profile are your destination.

Your existing skills are the vehicle you already have.

The skills you need to learn are the route or the additional equipment you may need.

Let’s say the destination is an island.

You have a car.

You can’t reach the island with the car.

So what do you do?

You may need a boat.

But maybe the island is very far away and a plane makes more sense.

Or maybe the island doesn’t even have an airport.

So buying an airplane just because it is faster doesn’t solve your problem.

You need to understand the destination first.

The same thing applies to technology.

If the company needs you to make a simple AI integration, learning advanced LLM architecture may be like buying an airplane when a boat would have done the job.

You don’t need the most advanced technology.

You need the right technology for the job.

So what should you learn?

Learn what the company needs first.

Then compare that with what you already know.

Identify the gaps.

Learn those gaps.

If PHP is required and you don’t know PHP, learn PHP.

If SQL is required and you only know the basics, improve your SQL.

If you don’t know APIs, learn how APIs work.

If you need Git, learn Git.

If the job requires AWS, learn the AWS services relevant to the job instead of trying to learn every AWS service.

And if AI is part of the job, understand what part of AI you actually need to work with.

Don’t learn technology just because everyone on the internet is talking about it.

You don’t need to wander around

There will always be another technology to learn.

Another framework.

Another programming language.

Another AI tool.

Another course.

Another certification.

If you keep asking, “What should I learn to get a job?”, there will never be a final answer.

Instead, start with the company.

Understand what they do.

Understand the role.

Understand what they need from you.

Then look at what you already know.

Then learn what is missing.

Don’t wander aimlessly and then blame the job market.

Know where you want to go first.

Then figure out the right route to get there.

Author

Ashwin

Tech Consultant and Engineer for Large Media Orgs. Passionate about coding and engagement.

Read More