Skip to content

@apriandanailus

Technical experience, Why it is not an absolute but important part of a tech career.

Journal, Tech2 min read

As much as I enjoy crafting code, I started liking the most important part of it, the initial construction. I believe nothing can be better than a well written, documented, scalable, clean (and testable) code . But, before someone starts writing the very first piece of code, another person must understand every part of what the software will do. Oftentimes, people with a tech background have more advantage to understand the underlying problem of a technical concept than someone who doesn’t. Even if it goes along with the experiences and cases they have been into, understanding the deep technical concept of a certain technology with the first-hand experience using the technology is a huge advantage. Let’s take a practical example. As a software company, we have seen increasing use and libraries written in Javascript. We have seen how good the performance of software written in JS Framework (NestJS, AngularJS, etc) is. We have come to realize that we can make better software in JS framework. On the other hand, we still have some projects running in the Symfony framework. As a project manager or Engineering lead or anyone who feels responsible for this matter, we have to understand every risk we will get once we have decided to migrate from PHP framework to JS Framework. Do our developers have enough time to learn the framework? Will the developer be able to change their language in the given time? Will it be easier or harder for the company to find new talent in that specific language? What can we do with the other projects with the PHP frameworks? Should we ditch all together or we keep it? How do we make the transition from a framework to b framework? And many more possible questions can come up from this issue. I am not against any project manager with a non-tech background, I believe someone has their own ability to decide things in the company and everything can be learned. But, it is surely helpful if the managers have a dev experience in one or more languages. Important decisions can be decided faster, and risks can be identified earlier.

In the last 5 years I have hoped from Android app development in Java, built VR in C# with Unity, React and react native, front end dev with Vue and Angular, Microservices with Lumen, Laravel, Symfony and lately I learned and worked with NestJS. I love learning all those languages and frameworks. I feel accomplished every time someone pulls my code, or when I finally fixed bugs, finishing a code that takes days and delivering the project to the client. Those experiences have helped me to understand that technical experiences will have a big impact on the later stage of someone’s career, but it is not absolute. We need more than just a rockstar developer to build software, we need a tech consultant, technical managers, analysts who have a fair understanding of technical knowledge to build good software and work effectively, or anyone who is smart enough to understand their lack of technical ability so they don’t make bad decisions in the project. Communication and an act of courage to give up our own idea are as important as making an acceptable decision in a project.

Communication and an act of courage to give up our own idea are as important as making an acceptable decision in a project.

As a final part of this article, I’d like to openly announce I am in my transition to being a technical manager and technical consultant, I am currently in talks with some companies in Germany for a possible move this summer, But I am still open for any possible openings until June 2020.