There is a popular cliché which says the journey of a thousand mile begins with a step. There is no exemption in the trajectory towards becoming a world-class software engineer. I must say it’s a long and interesting journey full of ups and downs. Like the words of late Tai Solarin: may your roads be rough. This is what I say to aspiring software engineers. Without further ado, who is a software engineer is a question in the heart of many.
According to careerexplorer.com, software engineering is a branch of computer science that includes the development and building of computer systems software and applications software. This is how simple the definition can be. Invariably, a software engineer is someone who performs the role of software engineering.
Wait!!! I know you’ve heard names like Software engineer, software developer, or developer. Some even called them programmers and you may get a little bewildered. Are they the same? Ooh, this thing is a bit confusing, right? Relax, I understand how you feel and I will explain and put these words into proper perspective before will plunge deeper. If you’re ready- come on, let’s get into it.
To the lame man out there a software developer, software engineer, programmer, or coder all mean the same. Well, that is a half-truth. A software engineer is more robust, he plans to design and applies engineering principle into software development. They are capable of managing complex structures and systems.
While a software developer is a subset of a software engineer. They are basically responsible for writing the code. They also help to improve and current systems. Those two terms are generally used interchangeably but the truth is they are not the same. You can do further research to understand the dichotomy between them. There are a lot of publications out there to buttress this fact- but that is not our goal here.
It is important to state that based on different organizations and regions of the world, a software developer and an engineer usually switch roles because software engineering is usually required to also have coding skills. How to become a world-class coder (programmer) is what we want to focus on now. I will use these words interchangeably in the context of this write-up programmer, coder, software developer.
There are many pathways to becoming a world-class programmer depending on the niche you want to focus on. But I will explain a common pattern required and applicable to all.
Choose Tech Path
First is to choose your path for example robotics and gaming, android development, Artificial Intelligence, Web Development, Desktop app development, data science, and big-data, etc.
Build your local Silicon Valley
Yes, your own silicon valley. The good book says you have to count the cost before building. Have a solid idea of what you need and what you are getting into. I must confess programming is very demanding, time-consuming, and expensive. You need a gadget like a laptop (preferably a mac), a good phone, WIFI or router with fast internet, a comfortable table and chair. You will spend a lot of time on the screen so it is advisable you maintain a good posture and not kill yourself in installment.
Pick your first Language
This often is the most difficult one but as soon as you get comfortable with it, picking up another language will be relatively easier. I advise you pick easy once first. This depends on the path you choose. A place like StackOverflow can help you determine the easiest language in your path.
Discover your study style
Some do videos, others read, some the combo- whichever works for you. It can be the blends of both. You understand yourself so stick to your style and be dynamic.
Practice Practice Practice
To bring your skill up to snuff, you need to make practice a way of life. The best way to learn and grow is by practicing, this cannot be overemphasized. You need to roll up your sleeves and get your hands grimy. Do the difficult exercise, think, brainstorm. Try to implement that thing, try that method that keeps resonating in your mind. It is not how far you cover the syllabus but it is how well you can implement that little you’ve known. Sometimes you will get stuck, you recover and move, get stuck again, get the solution, and move … it is an unending loop. That is the life of a developer until you find yourself at the top.
Boot camp and coding challenge
Although this is not compulsory, it’s an added spice. Boot camp is a community of developers like you, who are learning and applying their coding to create solutions via project et al. This is also an alternate avenue to grow.
Get a mentor
If you can, get a mentor in your niche who has learned the rope before you. Someone you can consult during difficult times. This helps a lot. Get one today directly or indirectly. Do this today and thank me later.
Learn another language
If you are tired of studying; you get bored easily, programming is not for you. To be a top-notch developer, you are expected to keep learning. Another language will expand your capacity and open you up to other ways of thinking. You get a new perspective towards problem-solving and a robust mindset.
Do project and keep learning
Remember, you learn by doing. So participating in a project is a fantastic way of developing your skill and learning new ones. Also, read tech blogs, watch videos, and follow trends in your industry. Know about the emerging tools and the industry trajectory.
Create a portfolio, Github
You can remain local physically, but it is criminal for your work not to be visible globally. Get on Git, create your repository, work on projects, see what others are doing in the developer’s community.
Know when to Rest
Health is wealth and you must be able to balance work and your mental health. Don’t let me say too much here. Help yourself, listen to your body so you don’t die young.
Remember you can only be alive to be a top developer and to achieve your goals. Keep striving.
Cheers!!!
If you’re interested in getting started as a web developer check out our FREE resources on web development basics. You can also check our premium 6 months software development program!
No Comment! Be the first one.