Skip to main content

Command Palette

Search for a command to run...

Do not escape from learning Algorithms, take it as your friend

Published
2 min read
Do not escape from learning Algorithms, take it as your friend
S

I'm Subhradwip Kulavi, striving to become the best full-stack engineer in the industry. With two years of experience in freelancing, I've honed my skills in building products that truly make a difference. I firmly believe in working on projects that bring happiness and value to people's lives.

In my journey, I've mastered Java, JavaScript, TypeScript, Next.js, React.js, Node.js, MongoDB, SQL, Git, GitHub, and Docker. But beyond technical prowess, I prioritize understanding the business needs before diving into product development. It's essential to ensure that there's a genuine demand from customers before investing time and effort.

Having a clear vision and set goals is the cornerstone of successful product development, and I'm committed to this principle. I'm selective about the projects I take on; it's not just about money for me. I want to work on projects where I can truly contribute and create value.

In summary, my journey is guided by the belief that generating value and understand

Whether you are a backend or frontend developer you should learn algorithms. Maybe your functionality is working for small-size data or inputs but when it comes to large-scale writing an optimal approach is necessary.
Disclaimer: The purpose of the post is only to make you understand the importance of algorithms and analysis of your solution.
People often say if I am doing development where would I use algos? I thought let's take an example of where you have a large number of characters and there is a search option where people search a term and that term will be highlighted in the text.
Now I implemented it with a basic brute force approach that is O(n^2) (quadratic time). In small cases, it is working fine. But the size of the text gets bigger it takes lots of time. So I use an algo called KMP string matching algo that helps to identify any string present in the other string or not in linear time. The performance is significantly improved.
Now people say there is built function like JS's replace() methods. Ya, you can use it. But let's say what if you want develop a personal library for your org.
It is only a small example of the use case of algorithms. While working on large-scale projects providing a good solution is very very very important.

This is the post only for those who think if I do development I don't need to know Algorithms
But if you want to be a good developer you should combine everything.

Here is the result that I have got after performance analysis: