top of page

Freshers’ guide to becoming a Software Engineer when you are not a Computer Science Engineer

In this article, I am going to talk about how can a non-CS Engineer prepare for a Software Engineering role. Also going to mention the must do CS topics for interviews.


Why become a Software Engineer?
  • You have an interest in problem-solving, logical thinking, and coding

  • You want to contribute to a software that’s used by millions

  • More prospect than any other field, if you are doing it right— While there are still amazing opportunities in other fields, the software industry is booming (accounts for 8% of India’s GDP) and with homegrown tech startups coming to the market comes more opportunities for engineers

What it takes to become a Software Engineer?

While many want to become a good software engineer, but only a few succeed. Because:

  • Software Engineering is all about upskilling yourself and learning new tech

  • One also need to develop logical thinking and problem solving attitude

  • While the first two points are the most important to sustain in the industry, having good DS/Algo knowledge is a must to crack interviews, the gateway to the industry.

That being said, let’s jump to the how can a non-CS Engineer prepare for a Software Engineering interview as a fresher.


Which CS subjects and topics to cover?

Attaching resources I used for each topic

Data Structures and Algorithm

  • Arrays, Maps, Sets, Trees, Graphs

Book:
  • Dynamic Programming


Resources:

Dynamic Programming - GeeksforGeeks

Practice Problems on Dynamic Programming Topics: Basic Concepts : Advanced Concepts : Basic Problems : Intermediate…

Top 20 Dynamic Programming Interview Questions - GeeksforGeeks

Dynamic Programming is an algorithmic paradigm that solves a given complex problem by breaking it into subproblems and…

Dynamic Programming - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared…


Database Management Systems

I learnt writing SQL queries on the job :P but you are expected to know the DBMS concepts like joins, SQL queries, indexing. Practice writing SQL queries using leetcode database problems.

Resources:

Operating Systems

Concurrency, Threads and Processes, Race condition, deadlock, semaphores, scheduling algorithms

Resources:

Bedtime Stories on Operating Systems.pdf

Edit description

High Level Design

Resources:

Note: There’s no shortcut to interview preparation. If you are a non-CS engineer, you will have to bring yourself at par with other CS engineers applying for the same role. And hence you will have to invest time in learning these topics because CS engineers already know or have at least come across these in their 4 year curriculum.

Must do coding questions/interviewers’ favorites

Note: This being the must do list. Apart from this, you will have to solve a lot many questions to be able to find optimized solution to any unseen question during interviews. Leetcode problems helped me practice.



My intro

To give a peek into my background. I am an Electronics Engineer from VIT Vellore. I switched field to become a software engineer and currently have around two years experience working as a Software Engineer.


Readers,
I may have missed certain topics important to interview preparation, feel free to suggest such resources/topics. I will be happy to edit the story.I am still a newbie at tech blogging and am looking forward to receiving feedback on the story.

For any queries, reach me at chayanikamisra1997@gmail.com

Thank you!!

Recent Posts

See All

Comentários


IMG_20191223_220908_294_edited_edited_edited_edited_edited_edited.png

Hi, thanks for stopping by!

I am a software developer who has contributed to the development of tech products across multiple e-commerce startups (Zepto, Myntra, Blinkit) over 5 years of work experience.

Let the posts
come to you.

  • Facebook
  • Instagram
  • Twitter
  • Pinterest
bottom of page