I reviewed a lot of take home coding challenges. Our challenge was designed for junior/beginning Java developers. In this article I want to compile list of recommendations on how to ace this challenge. These recommendations can be applied to all developers.
In my experience person doing the review will not spend huge amount of time reviewing your code. In most cases they will not even run it. I am not saying that that you send them nonfunctional piece of code. I am saying that the most important thing you can do is have everything clear and obvious. Do not…


Photo by Dietmar Becker on Unsplash

Recently I was solving an interesting bug that came down to comparing two Double variables with equals method. It looks innocent, what can be wrong with something like firstDouble.equals(secondDouble)?
The problem here is with how doubles are stored. To fit them into 64bytes (usually) they are rounded.

See the example below:

Double firstDouble = 0d;
for (int i = 1; i <= 42; i++) {
firstDouble += 0.1;
}
Double secondDouble = 0.1 * 42;System.out.println(firstDouble); // 4.200000000000001
System.out.println(secondDouble); // 4.2
System.out.println(firstDouble.equals(secondDouble)); // false

This inaccuracy is caused by rounding errors. …


Photo by Charles Deluvio on Unsplash

In my time as a developer, I have given hundreds of code reviews. It’s something I learned to enjoy very much as it gives me others’ perspectives on our codebase. Most days I learn something new from it. In this article, I want to go over few tips on how to be good at them and especially how to enjoy them.

Good pipeline

Most teams have some kind of code-style rules and recommendations on how to uniform their codebase. Whatever you do, do not force code reviewers to check whenever the pull request complies with those rules. There are tools to do…


Photo by JESHOOTS.COM on Unsplash

You are probably writing unit tests, if not you probably should. Over the years of my career, I did a lot of workshops, speaks, etc about how to write those correctly. One of the points I always make is to have understandable outputs of those tests. Nothing is worst than failing a unit test with a message like Failed. True != False what are you supposed to do with that? With standard assertions functions provided by all testing frameworks, you can improve this a bit by using correct functions, providing additional messages, etc... …


Photo by Anete Lūsiņa on Unsplash

In general, I consider myself a productive person. I usually manage to complete a lot of things per day. I read a lot of articles and books about how to increase your productivity and adopted few techniques that help me a lot. In this article, I will go over them, describe the technique, how it helps me and what I use to implement it.

This is not an orderer list.

Single goal

Every day I will set up a single goal for that day. The one thing I want complete. …


Photo by Brett Jordan on Unsplash

I am positioning myself as a professional problem solver. I am usually able to figure out most of the problems thrown my way in a reasonable time and with the more or less optimal solution. Problem-solving is a skill like any other and you can work on improving it. The big part of problem-solving is something called critical thinking.

What is critical thinking?

There are a ton of definitions out there so that you can pick the one you like. But essentially all of them are describing it as a process to process the information before you to get an answer or conclusion.

Adopting…


Photo by Andreas Klassen on Unsplash

This will be a strange article. I want to describe the stuff I use (software or hardware) that makes me productive and my life easier. This will not be a list of IDEs, libraries, etc… This will be a strange compilation of useful things that made me happy. And happy people are productive people.

Jabra headset

Amazon

I used quite a few headphones, microphones, etc.. set up to do my meetings. This one is the best for me. It’s comfortable to wear, it can be connected to my Mac and phone at the same time, so that I can answer phone calls…


Photo by Paul Skorupskas on Unsplash

SQL Views are a very powerful tool, that is sometimes overlooked. With all these ORM frameworks, Spring Data, etc… we sometimes forget that the most powerful solution is using SQL.

In this short article, I will go over the advantages and disadvantages of using views. The decision to use them is up to you.

Why yes?

Business rules

Do you have a business logic (only show articles after their release date) that you are writing to most of the queries you use to interact with that business part? By placing these business rules into a VIEW you can be sure about a unified portrayal…


Photo by Tim Marshall on Unsplash

Every software developer needs to work on their soft skills the same way they work on their technical skills. To some focusing on them seems like a waste of time, but they are very important to ensure your growth as a person and your growth in the developer “ranks”. Here is a list of some of the very important ones, these are used to differentiate between a good and a great developer.

Problem solving

The most obvious one for me. You need to be a good problem solver to do your work efficiently. Most developers require critical thinking and creating solutions. Problem-solving…


Photo by Carli Jeen on Unsplash

As always there is a lot of talks online about Java being a dead language. In my opinion, Java is picking up steam and lately, there is so much existing stuff happening that I am first time in a long time excited about Java.

Java 16 + 17

Java 16 was released in March. Java 16 is not an LTS (long-term support) version so many people will skip on it as they are upgrading only to LTS versions (no shame in doing that).

But there are only a few JEPs targeted to Java 17 (which will be the LTS version, released in September). The…

Pavel Polívka

Father, developer, bad sci-fi writer, love to learn stuff

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store