console.log("First Software Engineer Job Experiences");
Just starting out your first job as a software engineer? It definitely can be a nervewracking experience not knowing what to expect or know if you'll even manage to do well in the role and reach expectations.
I'd like to share 5 lessons I've learned during my first year as a software engineer and is something I wish I would have known much earlier or simply lessons that have solidified for me over time.
When starting out, especially as a junior there will be many times where we run into problems that we may need help to solve. You might feel as if you are bothering your coworkers by asking too many questions too often but I advise you to always ask for help when you need it. The worst thing you want to do is spend too long on a problem when a senior can help point you in right direction to the solution.
Of course that being said you should attempt to research and see if you can solve the problem yourself first to make things easier on your coworker as it will not do much good for you and the team to spend too much time on the problem or go for help without having tried solving it.
So don't be shy to ask for help since your team members are there to support and guide you as a new developer!
There have been many times during my experiences at my company where I wasn't aware of the specific technology or other things I thought I should definitely know which made my confidence levels go down.
For example getting used to the large codebase was taking quite a while and I felt like I was too slow at learning. Fortunately this isn't the case as it initially seems, it generally isn't expected for new engineers to know everything or necessarily pick things up with amazing speed.
Remember to focus on the important thing, you are there to grow and learn in a way where you are able to contribute to the company. Everyone has different speeds to get to a comfortable stage (whether it's 6 months or 12 months) so there is no need to feel rushed, take it slow and focus on ingesting everything at your own pace. Over time you will begin to pick things up and understand things more.
This is something I have felt and could vary for others but for me things we are taught in formal education are not often as comparable to having real experience in the workforce. For example we are taught agile practices in formal educations but being in a real world cross functional team that might consist of BA's, QA's, Developers/Engineers and other roles is a different experience in itself.
How every role interacts with each other and how the business side of things work is something we are not taught but is simply gained with experience over time and is valuable to have as a software engineer.
We come to the infamous Imposter Syndrome once again. Fear not if you experience this feeling, it's a common emotion for many developers...even well experienced developers!
You might feel this way because you can't solve a bug or you make a mistake at work. Typically imposter syndrome is a tough feeling to get rid of, you feel inadequate and your confidence in your ability as a developer is shaken.
Don't put too much pressure on yourself, don't rush the process and remember you are not alone in this. I like to follow a 'Fail Fast, Fail Often' approach. Failure is the key to growing ourselves and becoming a better engineer.
"Would you like me to give you a formula for success? It's quite simple, really: Double your rate of failure. You are thinking of failure as the enemy of success. But it isn't at all. You can be discouraged by failure or you can learn from it, so go ahead and make mistakes. Make all you can. Because remember that's where you will find success." - Thomas J. Watson
At times it might seem difficult and you may feel like giving up because you think you aren't cut out for software engineering, however keep pushing through and soon enough with each new experience, you will on the right road to growing in your career.
It might seem difficult, you might have trouble understanding the large codebase, have trouble working in an agile based team or face other issues on the journey but keep going and don't give up!
"When the going gets tough, put one foot in front of the other and just keep going. Don’t give up." - Roy T. Bennett
Those are some of the important things I've personally learned during my first year, if anyone else has anything they've learned and would like to share that would benefit others and myself, I'd love to hear about them! 🙂