I've learned that managing technical debt in an agile company is a delicate balancing act. It involves making conscious decisions about when to accrue debt and when to pay it down, always with an eye on the long-term health of the codebase. It's about understanding that technical debt is not inherently bad, but rather a tool that can be used to achieve business objectives faster. However, it's also about recognizing that unchecked technical debt can lead to a complex, hard-to-maintain codebas...| Vadim Kravcenko
As someone who’s been in the tech industry for more than 15 years, I’ve come to recognize a fundamental truth about being a software dev: the key to| Vadim Kravcenko
Let’s talk about something nobody in the startup Slack channels wants to admit out loud: Sometimes, the CTO is just... there. They’re taking up space,| Vadim Kravcenko
I've been reflecting on our engineers’ diverse impact on our projects and the true meaning behind labels like "10x engineer". Over the years, many| Vadim Kravcenko
I want to talk about something we don't discuss enough in our field: the mental health of software engineers, especially those of us who've taken on the| Vadim Kravcenko
Some of you know that I work in the agency business — how that translates to my technical experience is that I used to work on many highly different| Vadim Kravcenko
I’m sure you’ve worked at companies where you felt that they were moving slowly and it was not even worth putting your best in, and I’m also sure you’ve| Vadim Kravcenko
On August 1, 2012, Knight Capital Group suffered a severe trading loss due to a software error. A technician's failure to update one of the eight servers| Vadim Kravcenko
The role of a software developer often gets distilled down to a singular activity: coding. While coding is undeniably the heartbeat of the profession,| Vadim Kravcenko
Engineers at all levels are encouraged to embrace curiosity, showcasing that asking questions, can pave the way for innovation and deeper understanding. Remember, the right question at the right time can be the catalyst for groundbreaking advancements in technology.| Vadim Kravcenko
Aging your code isn't about resisting progress; it's about ensuring that when progress happens, it's built on a rock-solid foundation.| Vadim Kravcenko
How to effectively build an app with agencies or contractors. If you've got a quote of this amount to build your web app (or mobile app) — it's completely reasonable. We discuss crucial aspects such as the importance of clear communication, contract clarity, diligent background checks, regular updates, and budget management. A reasonable charge rate for designs starts at 20'000 USD, and a reasonable charge rate for a mobile app starts at 50'000 USD. This is an essential read for anyone look...| Vadim Kravcenko
Effectively managing difficult employees in a software engineering context hinges on three core principles: fostering trust by empowering autonomy, promoting growth through challenges and constructive feedback, and ensuring a comfortable work environment with streamlined processes and minimal disruptions.| Vadim Kravcenko
So what does the daily life of a CTO look like? What tasks are we doing? From hands-on technical work in small startups to strategic decision-making in large companies.| Vadim Kravcenko
A good mentor is not just a teacher, but a guide who helps you navigate your career path. They provide valuable feedback, challenge you to grow, and inspire you to achieve your goals. They're a role model who lead by example, demonstrating the importance of continuous learning. The best mentors are those who genuinely care about your success.| Vadim Kravcenko
There are types of contracts that you should be wary of signing, particularly in the software engineering and IT industry. There are potential pitfalls of non-compete clauses, confidentiality agreements, exclusive distribution agreements, and vague project-based agreements. It's important to understand the implications of work-for-hire clauses, one-sided termination clauses, and unclear compensation rules. Read contracts thoroughly, negotiate terms, and seek legal advice if necessary. Remembe...| Vadim Kravcenko
It's a term coined to describe work that is meaningless or unnecessary. These jobs have become prevalent in the modern work environment, particularly in the corporate world and the software industry. Such jobs thrive in rigid corporate cultures, 'zombie projects' that continue without adding value, and the pursuit of the 'next big thing' in technology. I also touch upon the negative impact of these jobs on employee motivation and productivity. While I don't propose a solution to eliminate the...| Vadim Kravcenko
As a seasoned software engineer, I've discovered that there's so much more to the field than what's taught in school. From the importance of understanding business needs and the value of soft skills, to the necessity of continuous learning and the reality of dealing with legacy code, my journey has been filled with lessons that textbooks don't cover. I've learned that software engineering isn't just about writing code; it's about solving problems and making a difference. It's about teamwork, ...| Vadim Kravcenko
Most of you are familiar with the feeling of joining a new company and have that urge to rewrite everything. Seeing the blasphemy that your new team| Vadim Kravcenko
You need to accept one truth - every shop is messy and every app has its skeletons. Period. Welcome to the backstage of the software world, where the| Vadim Kravcenko