We are trendy. Our professional field, we mean. For some unapparent reason to us, everyone thinks we work magic on computers and everything comes to life with just a click on the mouse (only if that was true). Statistically, we earn above the average salary. Again, statistically. Our job allows us to move countries and, at some point, we feel very much appreciated. Such are the needs of the Market.
Despite all the unicorn rainbow ideas crafted by society about our job, there are several things you need to bear in mind before getting yourself into this field.
It’s not easy, but it’s not impossible either. But the sooner you realize that it is going to take a lot of your time, energy, and effort, the sooner you will find the right track to keep on moving. It is rewarding when you finally master the craft of code and realize that despite all the challenges to come, you’re ready to kung-fu them all away.
But it’s not all just about coding.
What makes a great professional is the ability to envision the whole software architecture and to easily understand the building blocks involved in the process. That is why it is so important to comprehend programming paradigms, being OOP (Object Oriented Programming) one of the most important ones nowadays. Also, having basic UX notions facilitates everyone’s work: yours, the designer’s, and the rest of the team. Knowing to whom you’re crafting the final product is half-way to a successful prototype and that is precisely what sets apart a successful product from a loser one.
Surely, you will learn as you go ahead. The best school is work and the most reliable way to learn is by doing. Make sure your personal aspirations or personality aligns with what is expected from you on a daily basis at work. Software engineers don’t code all day, every day for the rest of their lives. They also have design sprints, meeting with colleagues, stakeholders, or other collaboration projects. They research & they train.
Do your homework and see if it is something that you would enjoy doing in the future.
Keep on learning every day. We guess this is nothing new to you. A few weeks ago, we came across a quote that stuck out to all of us: “A senior developer is a junior developer who never gave up”. Programming languages, frameworks, tools get updated quite frequently. Learn how to keep up with the latest updates and trends, but do not act like a superhuman and try to learn everything at once. Better get things done right than quickly and wrong.
Do not let the game beat you. Become the game.
For the sake of your knowledge and also the little social life we know you enjoy: join hackathons, marathons, all sorts of “thons” out there and make friends. Connect with the people from the same ecosystem as you (or not. That’s up to you). Often, we learn a great deal from other people, thanks to their fresh perspective, edgy experience, or outstanding personality. This brings us to point number 5.
A bit obvious, isn’t it? Many people think that because they will spend most of their day coding, they won’t have to talk to others. They expect to come to work, being told what to do, and deliver the end result. But by now you should know that it is too good to be true. Very soon, you’ll realize that the biggest part of your job is about collaboration & problem-solving. To no one’s surprise, the main foundation of these two is communication.
Creativity will be your best friend in the darkest of times, and if you do not have it, you’re going to have to find a way to grow it on a tree.
We are just messing with you (are we?).
Creative thinking is crucial when it comes to the time for you to design solutions to challenges that require a lot of your brain. There is a pinch of art in the engineering itself, we must all agree on that. The problems are rarely straightforward and fortunately for many of us, the higher the challenge, the merrier the solutions. Do not just train your logical thinking based on your math or science knowledge. Practice dreaming more often and the ability to come up with smart solutions will start to become easier than you expect. Everything in life can be exercised, remember that.
Cheesy but let’s remember that work plays a huge role in your life. You spend more than half of your day either getting ready to work, thinking about work, or being actually at work. A huge part of your time revolves around your job, for better or worse. So yes, it should make you happy. It’s not a marathon against the tide and you should NOT become obsessed with your happiness levels, but it should be one of your most relevant indicators. If you feel like you’ve done everything in your power to change your attitude towards your work, and it still doesn’t satisfy you, then you should figure out why and what to do next. In life, we are constantly adapting. That is the process called “growing up”.
It looks like we are just sharing the basic principles of a good professional, but everything starts from the basics, right? Once you have a solid foundation, you can start growing whenever is more suitable for you. That being said: time management skills are SUPER important for your job. As soon as you start applying your knowledge to the real world, you will quickly realize that it is humanly impossible for you to tackle all problems at the same time.
You should be able to see the big picture and train the visionary in you. Most of the time you will feel frustrated either because the legacy code is confusing or because the deadlines seem so unreasonable. Believe us or not, we all struggle with it from time to time.
Don’t focus on crafting the perfect code. Spoiler alert: it doesn’t exist and striving for perfection is going to be a huge waste of your precious, working time. Rather focus on understanding the right concepts, frameworks, and being the best problem-solver ever.
Not all solutions are beautiful, just as not every masterpiece is useful.
At the end of the day, you must understand that not everything is black and white and that there is no golden rule for success. Some people will follow orders and not use much creativity or communication on their daily basis. They will be good at executing orders, following rules, and principles. Not because they’re bad professionals, but because that is their purpose and their personal way of working. Others will pursue management positions and somewhere along the way lose track of their initial passion. As in everything, balance exists for a reason. Though one thing they’ll always have in common: love for tech & the will to change the world for a better place.
Understand that what we’ve gathered here are some of the basics of multidisciplinary career success but everyone has their own path and will get things done the way they find to be more appropriate.
Not everyone wishes to code for the rest of their lives, but knowing the basics can come quite in handy for the future. Jobs are changing; some are even being extinguished with time. Adapting along the way the career path and developing logical thinking can help you overcome some of the struggles yet to come.
And finally: it’s never too late to learn. Nowadays so much information is available online and it’s becoming easier to learn without paying thousands of hundreds of dollars, shift careers, or just find a profitable passion. Use those basic online courses as a starting point to see if it something you truly enjoy doing and move from there.
Time spent learning is never time wasted.