Have you just started your first job at a professional software development company? Do you feel a little bit lost in the new environment?I would like to share some tips and tricks I learned after a couple of weeks at Netguru. Had I known them before I started, they would have saved me some grief!
Have you just started your first job at a professional software house? Do you feel a little bit lost in the new environment? Here I would like to share with you some tips and tricks I learned after a couple of weeks at Netguru. They were not obvious for me at first, but had I known them before I started, they would have saved me some grief!
Don’t hesitate to ask questions
Better to ask the way than go astray - there’s a lot of wisdom in this proverb. Many years ago, I read “How To Solve It” written by George Polya and understood how important it is to ask yourself questions. These should not be advanced questions, but very simple ones, such as why? how? This in turn allows you change perspective and see a problem from other angles. If that doesn’t help, you might need to ask Google for help. Then it might turn out that someone else was struggling with the same issue and again this could save your valuable time. If Google doesn’t help, try to ask somebody from your team or on subject channels.
Read source code written by talented developers
Reading good literature changes our outlook on some things, especially in terms of taste and knowledge. Similar things happen while reading code written by outstanding developers. We can discover how somebody writes code, solves problems as well as the where’s and why’s of the tactics or strategies employed. During these processes, you learn about reviewing, design patterns and refactoring which are the bread and butter for every developer.
My time at Netguru has shown me a lot about Agile and how it works in a team of five people. Stand-up meetings, planning iterations, estimating tickets, calls with clients can all be stressful at first, but the team helps you find your feet. What do I like about Agile? Tickets, because when I finish a task, I can move on and not think about a previous challenge, especially if it was a little mundane.
Set goals every month and stay focused on them
You should remember what you came here for and not forget about your goals. Every month I set out what I would like to learn while working on my next project. This allows me to manage my time better and be more successful. For instance, read ember-cli-101. Goals are a necessity for work, and can include learning about a front-end framework as well as Ruby on Rails.
Learn another language
“The limits of my language means the limits of my world.” Ludwig Wittgenstein
Similarly to Wittgenstein, I see the necessity for constant learning about the world, especially about programming languages or technology stacks. When you find out something new, you come across new approaches to problem solving, new programming paradigms - these little things can change your outlook on software development.
Everybody has a bag of experience and you’re no exception. Try to share your knowledge and skills. It’s not that hard. You can find a lot of people looking for a helping hand - just reach out to them. During this process, you can improve your communication skills, a collaboration with others and gain some unforgettable experience in programming. Frankly speaking, while working on one problem, another one may crop up and that in itself is a valuable process.
Don’t be too sentimental
I remember my first day and that I wrote some lines of code which made me proud. It may be a nice feeling at first, but you should not hesitate to delete your code if it turns out you could have come up with something better. If you are a junior developer, it is obvious that you’re learning how to program and whatever you do could possibly be done better. In Netguru we have a simple rule - you are not your code.
Contribute to Open Source
Everyday, we use software made by other developers. That’s great, but remember that we take a technological debt which we should pay back in the future. So, creating open source software allows you to forge new ways ahead for the community.
To feedback or not to feedback?
Not sure about your performance during calls? Ask your PM for feedback. Don’t know if your review was done correctly? Ask the lead developer. They will be happy to give you information which you can implement and improve yourself. Don’t panic if someone gives you feedback. It is a valuable process and never take it personally.
I don’t mean software development, of course - but you yourself. Living in a fast changing environment has certain consequences. When I have started to develop an interest in software, the most popular language for creating a web applications was PHP. As you know, its popularity has been decreasing rapidly. The only constant thing is change. Self-development is essential and this means for me: attend events organised by your local community, conferences for developers and read books (there is a lot of good stuff), and just get out there and code.
One of the most important things which you need to have at work is a sense of fun - seriously. If you are not happy at work, you won’t be productive, creative, and you’ll feel like work is a horror show. Life is too short to be stressed, nervous or depressed. Keep calm and write awesome code!
Do you wonder what your first days at Netguru might look like? This post will tell you exactly what to expect!