TL;DR: Make your future self proud by making the right life choices.
I'm going to hit my six year mark in September as a web/frontend developer, which is probably relatively short compared to most of us here. Seeing how a few areas could have gone better, there are times when I wished I knew better back then.
Here are several tips that would have at least helped my younger self thrive better in the software engineering world. If you're like me six years ago, just getting your first job, maybe you should try some of these too! It's not anything tough or extreme, I promise.
The reason why I put this first is because it's the most important aspect in my opinion. None of the rest of the tips would be relevant if I was not in a good shape: body, mind and soul.
I wasn't that active before I got into the field, but I didn't know that working life was such a life-changing environment. Sitting down 9-5 with full-blown aircon, not drinking water that much, burned out by the weekend and sleep too much. These were okay at first, but the effect would definitely build up over time.
A few stay-healthy tips: drink water, maintain a good posture while at work, get enough sleep, stay active by doing exercise twice a week. Not just physically, though, mentally as well: talk/write about it instead of resorting to too much eating, go out more, explore new places, join communities. You get the idea.
English isn't my first language, and I only started using it everyday when I got my job. A lot of people would give me a pass since I'm not a native speaker, and I've been surrounded by the nicest people at work who would try their best to understand what I said.
However, these nice things were rendered useless the moment I stepped into the outside world. Open source communities, hackatons, dev conventions. I was technically mute outside of work.
These could have been avoided by learning to speak English properly and start practicing. Writing, reading, listening, speaking. And most importantly, I should speak not the way I would understand, but speak the way people would understand. Subtle, but it is really two different things to me.
PS: If you found any grammar/spelling errors in this article, let me know! That would mean a whole lot.
There were times when I had to resort to hacks (or prefer hacks), not exploring other options or not following best practices, just because projects had to be completed asap. This created a mindset that my practices are good enough because it works and I should keep doing it (Narrator: He shouldn't).
Obviously, I didn't know any better. Had I learned about open source, the majority of the popular projects are using a whole lot better code standards than mine, because it was maintained and contributed by more experienced, skilled people than me.
It is really a good place to learn. Contributing to open source validates the practices that I have been doing at work, so that I would eventually get off my high horse and be a student again. I could also share what I know, which could be valuable for others to learn from (or to avoid).
Ultimately, contributing to open source means giving back to the community. I've been helped out a lot by open source libraries, it's only fair if I help them out as well.
I've mentioned writing, but it shouldn't be limited to just that. There are events, meetups, or even dev conventions that I could join as a speaker and share what I know. The benefit is three-fold: it improves my public speaking skill, it validates my work or ideas, and sharing is always good after all.
I've always looked up to great speakers and how cool they were on stage, doing live coding and cracking up jokes. I thought it would be impossible for me to do the same, but I realized that I have to start small anyway. Writing is a good start. Seek for local meetups and start from there. Do a youtube tutorial or a podcast. Anything that works to get me to that stage someday.
One time I was trying to find a cause for a bug on a long piece of code that has no comments and no test. I talked to myself, 'What am I doing here...'. But really though, often time I focused way too much on the not-so-fun part of the job and this could spiral down into something that is way worse than just bugs.
Of course, there is no such thing as perfect job, but that doesn't mean I would suffer forever. Breathe and move on. If things aren't ideal and it can't be fixed, there's always other projects to do. Don't forget that the fun was the one that got me into this field after all.
I wasn't even sure if my younger self even considered any of these back then because I was way too deep into my comfort zone. No wake up calls. But it's never too late to make a change, in fact I only started doing some of these tips a few months back, and I've already felt good seeing how I am already better than myself, say, a month ago.
Hope you find these tips useful. And as always, thank you for reading this article!