What I learnt on my first year of Software Engineering job
Through three and so years of sharing whatever I learn in this blog, I have been sharing Java and Swift code along with summer jobs for students, finding internships abroad for CS majors, giving Ignite talks, quitting university like a boss, interning in a startup in Brazil, and more tips and stories ! Then, once on a full time job in an amazingly diffferent country and culture to mine, I set up a priority to “experimenting”, and kept track of all I am learning and living to be shared sooner than later. For one year I gave up spending hours writing tutorials and articles here, and gave up the hours I used to have learning new things by myself to many hours of professional and personal experimental learning !
This post is a first after a one year break, so much stories and tutorials to come, but let’s first start with how was the year and what Golden lessons I learnt! It might help you choose your first job wisely, or might inspire you get out of your comfort zone too.
It’s a whole package
The typical considerations of software engineers when looking for new job are a technology stack they are comfortable with, a salary package that gets with their aspirations, and maybe the location. But there is more to our Amazing job than what technology stack we use and how much we get paid for it :
There’s the people, the vibes and the culture, as you will be writing code for a short time of your day, and communicating, sharing, creating, planning and “living” with other teammates for the most of your day time. The first Golden thing I learnt from my first job is that ” culture fit ” is not a myth, and that ” People before Technologies “.
💡Before getting excited about the technologies or the salary and benefits, make sure you ” get the vibes ” of where you’ll work and you’re excited about ” the vibes ” before anything else ! Because if you don’t, you wont last long in your perfect tech stack – awesome benefits job.
There’s the location. Working in a tech hub city has nothing to do with working in a “different” city. It is obviously always a matter of priorities and choices, but young engineers who thrive to learn and grow should never be in cities where, like my first job’s location case, when they scroll Meetup feed they only see ” chakra healing or sound meditation ” sessions ! I love meditation meetups, but I would hate them if I would only see them and no tech meetups !
There’s the benefits. If you are just starting your career, benefits and earnings should not be your top criteria for selection, but they must be a consideration. They come after few other criterias and relatively to your aspirations and growth plans. In my case, I got my first job within a global company where there was relatively good training and travel opportunities. I wrote that down in the ‘opportunities’ column when I was deciding on this offer, but I never considered it as The Point.
And then, there’s the tech stack ! This point is important, but not more than the people, the vibes and the culture ! so after your guts tell you that That’s the work culture and social vibes you want to be part of, you lookup the day to day job tasks, along with your skills and strengths
To startup or not to startup
One of the details that crosses my mind even when I am at my desk in my current first job is whether I should’ve gone for the startup-first or not ! And it’s a topic of dispute for many. In my case, I worked in a ” startup within a global company that made its 100 years when I joined. Yes, a startup within a 100 years old company, as per my team’s agility, the PoCs over the PoCs I worked on, and much of the startup vibes I had to witness within my team. So my experience was somehow and to a limit a mixture of both! I saw the ” business before software ” spirit to its core, I have lived the corporate environment experience to its core as well. In another hand, I had daily scrums and I witnessed few teammates doing more than one role for the sake of delivery. At days I enjoyed being part of a global company working on gloabl solutions with cool IoT technologies, and at days I felt I was hired for any and everything but thinking.
💡I will not be preaching here about startups vs corporate choice for software developers, and this is not a post to advise on the best companies or startups you should be working on , but, from my first 12 months experience with a startup-within-a-corporation I highly suggest you consider knowing which is best fit for you, and where will you be more effecient.
To hustle or not to hustle
This point relates alot to the first one “It’s a whole package”. When studying my current job’s offer to decide whether I should take it or not, I had many points to classify as “opportunities” ( the tech stack was one ), and I classified many as “obstacles” ( the location was one ). I ended up giving up some for some others, depending on my future plans and long term career aspirations. As an example, I chose to give up ” a tech-hub city ” for a culturally rich city, which means I chose to lower my professional standars for my personal and social experience. Which is sometimes fine, always depending on ones long term goals. Working hard or not working hard is as well a matter of choice. Juniors do not usually hold the intention of ” not giving it their best “, but as I mentioned above, it’s a whole package, if your priority was to the projects, tech stack and day to day tasks, then you better choose somewhere where you are certain you can work.hard. If your perception when accepting your first job’s offer was ” a bit of everything “, or ” salary before projects ” then you can toggle the “giving it your best” part.
💡 My first year of software development job thought me that “efficiency first, hard work second“. If you haven’t chosen your first job with the certainty you will be efficient and productive and creative, then be aware to assume your choices during the job, and be aware to be efficiency-aware !
To keep learning is no option
Whether you choose to startup or not for your first job, whether you choose to hustle or not, and whether you choose the “perfect package” with all suitable options for you or not, there’s that one constant, apart from change, which you should keep in mind : Learning. It could be plain technical coding skills learning, it could be you engaging in more business related tasks, it could be soft skills learning or public speaking opportunities, it could be general work processes or any other kind of skill, it could be personal, cultural, or social learning opportunities – you should devour whatever learning opportunity you have, always efficiently and smartly. During my first job, it was a cultural learning focus I had. I kept ” getting new information ” as a motto in the back of my head , and I think you should always do as well during you first – and all – jobs.
Looking backwards through my last-first 12 months as a software developer, I see I had fun making lots of mistakes and learning through it. The one Golden tip I could share with you here as a sum up for the whole article is that your first software engineering year is made for mistakes, learning, exploring your preferences and strengths and clearing up the way for a more relevant and maybe permanent career paths.