Programming as a Passion vs Programming as a Job
Based on my experiences with my personal opinion and thought
When we were still in college, we always demanded for studying hard. Having a good score in every class and also active in social community, club or something.
I remember when I was still in college, I always trying not to fail in my class. Also, I’m joining a club, a community by students. A geek one, it’s called “Programming Club”. So here we are talking about programming, learning and teaching, making target, being participant for national and international competitive programming. We here all so passionate, and it’s just very cool.
Sometime, I follow some of competition in national or just in the campus about developing something, or participate in any hackaton.
Well, at the end, I’ve never won anything, but it so fun and challenging. I met with new challenge. My mind forced to be creative, and give more crazy idea come to my mind every day to compete. I got a new experience, make me felt so passionate.
Another story, when doing this, some of my class going bad. I always sleep late because this hype. That caused me lack concentration in the class. I’ve forgot that whatever I do in competition, it’s will not affect and passed my class. I won’t get graduated just being participant in any competitions, or if I won something, that’s not will guarantee my graduation from my college. Instead it’s just will add more rows in my achievement resume. Well that’s the reality at that time. Whatever it’s cost, I must surpass and graduate from there.
Programming as a Passion will Increase your knowledge become geek.
Now let’s talking about programming as job and programming as passion. Let’s say you are a very good software engineers. You’re very curious about anything new and never miss. You have a lot open source projects and contribution in github. When there was a new programming language comes, you create a simple project using it. But when it’s finished. You never see them again.
Or you’re so passionate to follow any competition to create some apps, web, or something. You code it on your side project. You got the Idea. Then to make it more cool, you use the new technology. Everything is new. Then starting to develop the apps. You learn and develop the application. You already on your half-way to finish it. But someday, your company creating a new feature. And you will charged there as the core team. Then time by time, you forgot that your last application for the competition not finished yet. You starting to confused. Then finally you decide you will abandoned this competition, so do the application that you build by the new fancy technology. But you learn new thing. You already add a rows on your resume, a new technology.
Congratulation, you now already a geek. Love to do a new things. Follow the hype and really really passionate on it. You know many things. That’s an experience only get by being passionate.
Programming as a Job will increase your experience become professional.
Compare it when you work on your job. Developing a feature ex: targeted push notification that will handled with so many message queue and high concurrency that creating deadlock. You stuck on your project for a 3 weeks. Figuring what is the real problem. You’re going to frustrate, and need more energy drink to solve it. WTF!! Can’t solved. You start being bored, and hope God sent you one of His Angel to help you. Starting to ask, why I must do this? Being wondered, asking for self, am I paid enough to do this? But when you solved it, you will more experienced with your role. You got a very valuable experience, that cannot achieved by only creating a simple projects.
Or when you are at your company, you are a lead. And your team will assigned to a big task. It have been a month, but the task still no progress. Your team really need more time and help, but your CTO pushing you more, and more. WTF!!! Starting to inner scream. This is not where I belong to!! I can be more than this!!!! Starting to use new methodology for productivity still not good. Pray for the God’s help. Meeting will looks like a nightmare. But when the task is done, you will feel become more responsible.
Congratulation, you now a professional. When you finish it, you already making a new improvement to your self.
Passion is about “create” something. Job is to “make” something
Create means you create something from nothing to an existence. Make means you form something from a things by adding many things. Maybe a bit confusing 😄
Programming as passion will guide you to create anything in your mind. I have an idea, I want to create this. I want to create that. Compare it when you in your job. Your company already have the product. You just only can making a new feature or you will demanded to do the task, testing the function, fixing bug, etc.
Passion make you create a lot project and idea, job make you creating a lot impact to your company’s product.
Both increase your value as an engineer
So no matter what, it will increase your value as an engineer. And it will more good if your passion combined to your job. You will love your job.But when you so passionate on programming, know your limit when you combined it to your job.
I’m learning gRPC a few days ago. Well it’s a new fancy framework to RPC world. I’m so passionate to learn it. And even already making a simple project about it. Later, I want to trying it to our production micro-services. Well, it will need a lot of work, and cost to much resources.
When you know about anything new there, passionate and fun doing anything, at the end, you only found that you will not using it fully in your production.
Previously Posted in : https://blog.pairworking.com/programming-as-a-passion-vs-programming-as-a-job-61637a47d83c