Gather around, readers! It's time for the last Dev Breakfast Newsletter of 2022. The Winter holiday season is an excellent time to reflect on what you have done. We programmers often look back on our previous projects with bittersweet memories. Oh, had I known that a few months ago, all my struggles would have been much easier. It happens to me almost every time I switch projects, which shows how much we really learn in this profession.
In this edition, I wish you a better year in 2023. Furthermore, I hope you will find significant enlightenment from the following picks.
Meet the curator of the month
Niko Heikkilä is a full-stack software engineer, craftsperson, and a member of the recruitment team at our Tampere office. Equipped with a strong passion for making work and life better for other software engineers, he is constantly thinking about improving the processes, ways of working, architecture, and code itself. When his brains allow him a break, you can find him at the premiere of the next loud and dumb Marvel film or posting impeccable memes online.
In 2023, I hope you develop more effective organisations. Some people say "agile is dead". On the contrary, agile is very much alive, but in some organisations it's too heavily focused on rigid frameworks, processes, and certifications, deviating from Agile Manifesto's original principles. The heuristics listed here are a breath of fresh air, taking us back to the pristine roots of agility.
You may ask yourself: what good is your agile organisation if it doesn't
1) enable small value increments, 2) connect people, and 3) improve their lives?
In 2023, I hope you optimise for better teamwork. Co-creating great software is a topic I'm passionate about, and fortunately, it's also one of Futurice's core principles we live by. This article investigates the economics of asynchronous work vs co-creation patterns.
When was the last time you were blocked while waiting for code review? Did you receive meaningful feedback? Did you have to return to fix defects after the latest production fire despite everything looking good in the pull request? Your team might suffer from excess asynchronicity, which the great pandemic has unfortunately exacerbated.
In 2023, I hope you design better architectures. When designing long-lasting software, one of its fundamental tenets is maintainability. You can only have high maintainability by keeping the software inexpensive to change. To achieve that, you need a robust automated regression test suite that doesn't fail you.
Hexagonal Architecture revolutionises your application's architecture by making automated tests first-class citizens. You should forget about testing databases, network events, filesystems, GUIs, and CLIs. Instead, decouple your domain logic from side effects and focus on concrete use cases and their business rules.
In 2023, I hope you write better code. The best way to achieve that is to agree on rules you and your team follow. The following nine Object Calisthenics help you design cleaner object-oriented code, but you can also extrapolate the ideas to other paradigms.
Join our team, if you have several years of experience in software development, ideally in the development of large-scale web-based and mobile applications and services.
If building software in a cloud environment from the actual coding all the way to setting up deployment pipelines excites you, just go ahead and apply.