Building a balanced skill set for junior software engineers
When I started my journey as a software engineer almost five years ago, I was like many of you – eager to dive into code and solve problems with the latest technologies. Over the years, I’ve had the opportunity to work on various projects and in different teams, each offering unique challenges and learning experiences. Having a master’s degree in computer science engineering, I initially focused a lot on gaining deep technical knowledge....
How to migrate your production database to Postgres
In the tech world, change is the only constant. As a software engineer, I recently faced the challenge of moving a large database from MariaDB to Postgres within the AWS RDS environment. This transition was prompted by a strategic decision from our platform team and management. They determined that, moving forward, we would standardise on Postgres, phasing out other database engines like MySQL and MariaDB by setting end-of-life (EOL) dates for them....
Embarking on My First Prompt Engineering Adventures with LLMs
Welcome, fellow tech enthusiasts! If you’re reading this, you’re likely just as intrigued by the world of Large Language Models (LLMs) and prompt engineering as I am. As a newbie, I’ve decided to document my journey to better understand LLMs, their capabilities, and the potential they hold for us in the future. In this blog post, you’ll find my personal notes, thoughts, and discoveries, all captured in a casual, conversational style....
Bcrypt: a Future Proof Solution for Password Security
Passwords are an essential part of our digital lives, and they play a crucial role in protecting our online identities and sensitive information. However, not all passwords are created equal, and the consequences of a compromised password can be severe. This is where password security comes in. To keep passwords safe, one of the key components of password security is password hashing (which we discussed in my previous post). Password hashing is the process of converting a plain-text password into an unreadable string of characters, making it more difficult for attackers to access sensitive information....
Building a Scalable Application Monitoring System with AWS CloudWatch
Keeping modern software systems healthy and performant requires application monitoring. With the increasing complexity of modern applications and the rise of microservices, it has become even more a necessity to have a comprehensive monitoring solution in place. With AWS CloudWatch, you can monitor applications in real-time and diagnose issues before they get worse. This blog post will guide you through the process of building a scalable application monitoring system using AWS CloudWatch....