Recommended book list

I created a book list with my top recommendations for junior java developers. You can checkout the list on google docs: here

IntelliJ – Debugging Cheat Sheet

IntelliJ

Debugging is a skill on its own. If you use IntelliJ, i have something for you.

A Debugging Cheat Sheet that will help you become a better developer

Click here to open the sheet on google docs


Junior-Dev – Fundamentals Checklist

A common question from beginners with no previous job experience is when they are ready for their first job as junior-developer. The answer is probably 6 months after you started your first job.

The truth is you will constantly learn on the job, but below is a list of “minimum” requirements to be “job ready”. Take the list with a grain of salt as some companies have more requirements and some companies might have fewer requirements.

  • Basic Java Syntax
  • Java I/O
  • Portfolio of “Pet” Projects
  • Basic SQL Knowledge
  • Basic Knowledge of Data Structures
  • Basic Knowledge of a Version Control System (GIT, SVN, or other)
  • You know how to Debug
  • Willingness to learn quickly

The two most important points are creating a Portfolio and your willingness to learn quickly. So start coding and create a Portfolio on e.g. github.com.


10 Lessons learned from my first year as software developer!

During my first year as software developer i learned a lot of lessons. In this article i want to share the most important lessons with you. Lets get started.

Ask Questions

Before i started my first developer job, i was afraid that i would ask to many questions. I didn’t want to look lazy or stupid in the eyes of my coworkers. The truth is you should ask as many questions as possible. There are no stupid questions and every answer you get will give you a better understanding of the project.

Be Humble

Software developers often have hard opinions on how to do stuff or what technology is the best to use. Dont do this. Stay humble and dont think you know it all. The more open minded you are the more knowledge you will receive.

Teamwork is everything

Before your get your first job as a software dev you probably think that technical skills are the most important skills for your job. I thought so too.That was before i understood that teamwork is far more important than technical knowledge.

In a good team you should supplement and help each other. A good team is far more effective thanĀ  a group of solo fighters. Dont strive to be a rockstar developer, try to be a good team player. Support and help your coworkers.

Learn to love legacy code

Every software that gets written needs to be maintained. The logical outcome is that you will probably work on a legacy project.

Legacy code has a bad reputation for being that horrible spaghetti code with lots of technical debt. But compared to green field projects you can learn a lot more from legacy projects. See it as a great learning opportunity, embrace it.

Do no t allow magic code

In your career as junior developer you will come across code parts that you wont understand. Do not mark it of as this magical piece of code that somehow produces the right result. Look into it, ask your coworkers about it. Too often junior developers don’t try to understand complicated code parts and mark it of as magic.

You never test your code enough

One of the hardest lessons i learned as a junior developer was that you never test your code enough. Deadlines and hard to test legacy code makes it hard to test your code. Nevertheless you should not commit untested code to version control. Testing your code will make you a better developer.

Think before you code

New developers tend to rush into coding, before they even know how the final solution should look like. Before you start coding, think through the solution. A good practice is to discuss your solution with a senior developer before you start coding. This will give you feedback, show you faults in your thought process and will make you a better developer.

Get a mentor

Getting a mentor can be very beneficial. A mentor can be one specific person or a group of persons you go to ask for guidance. You can learn a lot from a mentor by asking questions or by simply observing them and look how they go about specific things.

Debugging is important

Debugging is one of the most important skills you can learn as a developer. You should learn about the debugging tools of your IDE. If you work with legacy code good debugging skills will help you a lot in your job.

It takes time

The path to becoming a good developer is a life long journey. Don’t worry if you don’t see immediate results. Enjoy the process and the results will come.

 

If you want to follow me along on the path to mastery, subscribe to my newsletter.