I believe that most of us were given a recruitment task at least once in their career. These tasks are meant to show our coding skills, the way how we think and much more. Since I have completed lots of them during my career, I write a few words about this approach of assessing skills.… Continue reading Take home recruitment tasks – the good, the bad and the ugly
Introduction to JVMTI - even better Java Agents
Hash code is the crucial thing in hash-based algorithms like those used in hash maps and all problems come from that simple fact. Its efficiency is as important as the efficiency of the hashing algorithm itself. Let's talk about those problems and how to solve them. Why hash code can cause a problem? The main… Continue reading Hash Code – Problems
Welcome back to Hash Code miniserie where you can read how the hash codes (non-cryptographic hashing algorithms) and hash collections work in different programming languages. This time let's take a look under the hood of Java's collections and Strings. How hash codes are generated for them? Let's check it out. Arrays Arrays in Java do… Continue reading Hash Code – Java’s collections
Introduction to Java Agents. Theory & practice.
Welcome to the first article of the Hash Code miniserie where you can read how the hash codes (non-cryptographic hashing algorithms) and hash collections work in different programming languages. Every software engineer uses hash collections like Python's dictionary, Java's hash map or C++'s unordered map. You get them to know pretty early in your learning… Continue reading Hash Code – Introduction
This post is a continuation of a series focused on monitoring & supervising untrusted JVM process that runs inside docker container provided by the third-party provider. In the first article I described how to share process namespace between containers, this article shows how to get a better understanding of the JVM process that we do… Continue reading Supervising JVM with Dynamic Attach and Golang
Is Kotlin just a beta version of Java and is it going to be superseded by Java and die? Or, is Java just trying to catch up from a better language but it will be never able to do this? Let's check what is going on there! From the birth of Kotlin to the present… Continue reading Is Kotlin Java++ or beta of Java?
Every time I want to do non-standard things in docker I struggle a lot. Usually doing something not obvious but not impossible requires lots of Googling, reading the documentation and digging into Github repositories. This time wasn't any different… Continue reading Sharing process namespace (PID) between containers managed by docker-compose
It’s not a secret that most of the blog post ideas are born while dealing with problems in production and this article isn’t an exception. Today, I would like to show you another tool that every non-junior developer should know. It’s a super useful tool from JVM world, still, a mystery for some of us… Continue reading Know your tools: jstack