1/12: Why you won’t become a complete software developer by knowing to how to code alone

Ishwar Jha
4 min readDec 16, 2021

--

I entered into the world of coding in 1991, thinking building technology is all rainbows and butterflies, and that’s not true. You have your good days and bad days, just like any other job. But what positively influenced me as a technologist is if you focus on your art which is to apply a structured method of software development, exercise managerial leverage, and elicit your desire for peak performance, you are ought to achieve extraordinary career success.

From coder to CIO at Sony Music and CEO of Digital Business at Zee Entertainment, I grew rank & file in my career life while being fortunate to build dozens of first-of-its-kind technology products and award-winning solutions.
Here I am sharing the exact system I used during my journey, and you too can, if you dream, outdo the obvious and get in the league of top technology professionals.

You first need to hone your skills to solve the problem poetically and beautifully.

You need to have the technical skills necessary to become a software developer. Which technical skill to know and how to acquire it becomes quite overwhelming to many software developers? You will always struggle to make choices, learn to become an expert, and struggle to know where to start.

I will filter it here to show you the most essential and beneficial technical skills that will benefit you in your quest to become a software developer.
The MockRabbit app you have downloaded will help you know where you stand as of now so that you are more prepared to move ahead with the definitive steps.

You should know one programming language really well;

There are many programming languages, Java, Python, PHP, C++, .NET, JavaScript, Node JS, and many more. Instead of hedging your bets on learning multiple programming languages, I advise you to go deep and focus on learning the ins and outs of one programming language, so you can feel really confident to write code in that language. Learning another language is relatively easy at any point in time as most of them have a somewhat similar structure, commands, and aesthetics.

Learn to write simple, understandable, and easy to maintain code

Stop like other developers who go through their whole lives writing wasteful code. I recommend you to read the book Code Complete by Steven McConnell to learn this valuable skill, review codes written by great software developers on Github, and participate in the coding competition to sharpen your coding structure.

Practice the Model View Controller

Building a large project requires you to manage complexity. Practicing MVC allows us to separate complexity into many interconnected components, making it easy to tackle the entire complex system.

Algorithm and Data Structure

Your life as a developer will involve dealing with algorithmic programming and handling data structures quite a lot. Being good with algorithms will empower you to solve a problem in quite a short period than the ordinary developers who take several days figuring out. The best resource for learning the algorithm and data structure is reading Cracking the Coding Interview by Gayle Laakmann and practicing it in your favorite programming language.

Development Platforms, framework, and stacks

The developer world is filled with platforms, frameworks, stacks, and IDEs. You should get familiar with the platforms and IDE you have chosen for the programming language to pursue as a software developer.

Database Knowledge

In software development, databases are used to store data for an application. You should know how the database works, how to perform queries to get data, create, read, update and delete data, and join datasets together.

Github and Source Code Control

You will be collaborating with multiple developers during your work. You should know how to use GitHub and other source control systems to check in, check out, and merge changes from various sources.

Testing and debugging

You can no more afford to write a code and throw it to the testers who would find all kinds of bugs in your code and then fix them. Producing quality software is now the developer’s responsibility, and the more you know about the testing mechanism, the better you will be in your craft. Learn some basics of testing mechanisms like white-box testing, black-box testing, unit testing, automated testing, and test acceptance.

You will be spending 90% of your time figuring out why your code doesn’t work. You need to be familiar with the debugging techniques, tools and learn the art of debugging your program effectively.

I know I have said quite a bit of stuff. But, I wanted to tell you an entire laundry list of competencies you will need to acquire to become a top software developer.

Start with challenging yourself to think bigger and deliver faster!

I will wait to hear from you what do you think about this article.

--

--

Ishwar Jha

Founder @ Appetals | Ex-Zee & Sony Music | Helped 17000+ Students start their careers and 6000+ entrepreneurs launch & grow their business.