Software Engineering LevelsWhat are the differences between junior, senior, and lead engineers different? Junior vs. Senior developer? Junior engineers are expected to solve complex problems with guidance. They need practical experience to get better at problem-solving. They'r...May 19, 2024·2 min read·863
Understanding Domain-Driven Design (Part 2)Introduction Hey there! Welcome back to Part 2 of the “Understanding Domain-Driven Design” series. It’s awesome to see the positive feedback from Part 1. After a decade in the industry, I’ve tried my best to explain what I learned about Domain-Driven...Jan 21, 2024·9 min read·3.5K
Understanding Domain-Driven Design (Part 1)Introduction Hey there! Today, I’m explaining a good way of developing enterprise software. I’ve spent roughly 10 years in the industry and experienced many different architectures. Let me be honest with you, this series won’t be useful if you’re onl...Jan 14, 2024·10 min read·17K
Why is it difficult for many people to create things consistently?Hey there, today is not about tech talk. I've been thinking about some drafts that have been sitting around untouched for a while. I asked ChatGPT why it's so challenging to create things consistently, but its responses were quite basic, as usual. Th...Jan 6, 2024·4 min read·202
Building Beyond Tools: What's Wrong with Modern Framework-based Development?The Road to True Expertise: More Than Just Tools In modern programming, languages and tools have made it easier than ever to code. You can create a web project without spending four to six years buried in textbooks and lectures. I believe I could tea...May 13, 2023·5 min read·1.2K
Avoid These Mistakes in Your Software CompanyThroughout my career as a software engineer, I have worked in many different kinds of situations. From small teams to some of the biggest in the industry. The successful ones all had one thing in common: they valued their employees as the cornerstone...Apr 19, 2023·4 min read·301
Programming paradigms: Which framework is better?Programming is a very complex and rapidly evolving field, with new technologies and methodologies constantly emerging. One fundamental aspect of programming is the approach you choose to solve a very specific problem. As software development became a...Mar 11, 2023·5 min read·142