There is a high chance that you attend or have attended an inefficiently-run stand-up. I have seen various stand-up styles over the years. Sadly, most of the roughly 2000 stand-ups I attended were …| CodeKraft
There is more to software development than writing code. This post describes three of the most oft-repeated tasks I have been asked over the years. These are not strictly programming tasks but help…| CodeKraft
Late in 2016, I made a conscious decision to become a full stack engineer. It was a tough decision for me because it meant a career reset and came with some risk. I would also have to learn a lot a…| CodeKraft
The console is one of favorite places. The REPL environment is a quick way to validate JavaScript expressions. However, there is a lot more it can do. Read on. 1. $0 – $4 selectors The last i…| CodeKraft
Programmers usually spend a lot of time debugging and it can be a painful experience; some feel like tearing out their hair in exasperation, smashing their poor computers or even believing that the…| CodeKraft
Habits die hard It is hard to focus in a fast-paced work environment: there can be live-site incidents out of the blue; bugs to fix and meetings to attend. I have always struggled with coping …| CodeKraft
You inherit a team mid-flight. You didn’t hire them. You didn’t set the culture. But now it’s yours—and the results are on you. Some leaders react with frustration. Others get to work. In this piec…| CodeKraft
You have a tried and tested approach for solving a knotty problem; however, getting organizational buy-in feels like pulling teeth. You’ve tried cajoling, begging, storming, bargaining and more to …| CodeKraft
How do you drive change across difficult environments? For example, presenting radical new ideas to an unreceptive audience or collaborating with parties with opposing interests| CodeKraft
5 important ideas that engineering teams need to keep in mind to optimize value delivery.| CodeKraft
Sometime last year I started to solve hackerrank problems at my pace and here is my progress after about 108 days ago.| CodeKraft
I wrote a memories of Ife piece after completing my bachelors and it would be just as well to write another post about my time at Masdar. Masdar is a great school, has an international student comm…| CodeKraft
1. Deliver when you commit It is extremely bad for your reputation to fail to meet up to your words; if you can’t deliver, please say no or find an alternative way out. How would you fee…| CodeKraft
I actually wanted to write about PubSub alone: it’s a fascinating design pattern to me however, the thought occurred to me, why not write a design patterns’ series? It’ll be good knowledge for me a…| CodeKraft
Engineers need to estimate system performance and simulate real-life scenarios. For most engineering fields, there are rich banks of proven theories and mathematical relations to rely upon. Unfortu…| CodeKraft
I recently transitioned into a full-stack role – I wanted to stretch myself and step out of my comfort zone. The biggest challenge was my struggle to quell the quite nagging voice in my mind …| CodeKraft
A couple of things to validate before you press the ‘go-live’ button on that wonderful web application of yours.| CodeKraft
How to get consistent print output across a range of browsers and their never-ending stream of subtle nuances.| CodeKraft
One of the most underrated parts of working at any job is interacting with people. It is amazing how much humans achieve via collaboration and also how fast relationships can degenerate.| CodeKraft
This post describes leading a team through a tough turbulent transition while handling hypergrowth and business pivots. It details the focus on high leverage activities to break the loop of never-e…| CodeKraft
A simple system can be understood by studying each of its components; similarly, complicated systems can be understood by studying the intricate details of components. It becomes possible to model …| CodeKraft
I used to wonder why people would refer to software development as an art; to me there was absolutely no correlation between programming and art. However, after hacking at software for years and wr…| CodeKraft
Software services need a solid foundation that guarantees near 100% uptime. The work needed to establish such a base is termed devops, infrastructure or platform. About 18 months ago, my team got a…| CodeKraft
My foremost goal while building software is to build stable self-healing systems with deterministic behaviour. I want to ensure my code continues to work even when unexpected events occur. In the e…| CodeKraft
Tips for running services at scale with minimal toil| CodeKraft
Software engineers, technical leads and managers all share one goal – shipping high-quality software on time. Ambiguous requirements, strict deadlines and technical debt exert conflicting tug…| CodeKraft
Have you ever wondered why some applications always look and feel similar? Why for example does Apple have a unified experience across devices? Why are Google products starting to adopt the materia…| CodeKraft
Whether you’re managing a group or facing challenges solo, these aphorisms offer a way to streamline your thinking and create a culture that thrives on problem-solving.| CodeKraft
The book discusses the fundamentals of systems theory, emphasizing interconnectedness, stock, and flow dynamics. It highlights systemic problems, such as addiction and resource management, and explores how common misconceptions can lead to ineffective approaches. It underscores the importance of understanding system behavior and structural change for driving impactful outcomes and sustainable solutions.| CodeKraft
All the struggling organizations I have worked in shared one common characteristic. They had process deficiencies: some did too little, while some did too much. The best-performing orgs? They did just right.| CodeKraft
The Mom Test is a concise and impactful guide for startup founders, emphasizing the importance of asking the right questions to distinguish genuine customer needs. It highlights common mistakes and…| CodeKraft
I used to think computer science never mattered because I rarely used algorithms and never saw the value of algorithm-based interviews (I still don’t ;) ). The few folks I asked also concurre…| CodeKraft
This book places a heavy emphasis on risk and academic analysis. The key lesson is to avoid relying on lucky breaks in plans.| CodeKraft
TLDR ★★★★ Very easy to read. Direct link to the paper. Interesting takeaways Novel approach to conflict resolution: Unlike most data systems that push conflict resolution to the write phase, Dynamo…| CodeKraft
This post delves into crucial challenges at each product maturity phase. Senior engineering managers and high-level executives will benefit significantly from examining their portfolios and applyin…| CodeKraft
Do you struggle to balance your urgent tactical needs with important strategic goals? Do you wonder how to handle the boatload of important customer requests by prioritizing and allocating resource…| CodeKraft
How do you get a brand new team to become productive within three months? This post describes the lessons and techniques from rapidly ramping up these teams. These tips should help new members beco…| CodeKraft
This post challenges misconceptions about chaotic on-call and livesite practices, offering lessons from extensive experience. It introduces common red flags like call hell, hero worship, and the wi…| CodeKraft
The post discusses my experience with learning and using Ruby, highlighting its good, bad, and weird parts.| CodeKraft
This article distills some hard-learned lessons into reusable playbooks for tense situations and is for everyone trying to improve their conflict resolution skills.| CodeKraft
The Cow and Chicken are journeying through the countryside and see a diner with a sign that reads “Steak and Eggs”. The chicken nudges the cow and cackles delightfully: “Look! Loo…| CodeKraft
This article clarifies how promotions work and highlights potential pitfalls. It describes a career-growth framework based on technical skills, interpersonal relationships, and influence. As one be…| CodeKraft
My last manager commended my rapid ramp-up and steady progress throughout my onboarding phase. I chuckled silently – if only he knew my many mistakes in my past 6 attempts. This post shares s…| CodeKraft
Introduction “How can I trust you? You keep telling me about a new direction every other month” My report after the 3rd organizational pivot within three months. Background I was dumbs…| CodeKraft
This post presents tips for the interview process and valuable resources, especially during this challenging whirlwind of layoffs. Most of these are lessons from my 100+ hours of interviewing at ~2…| CodeKraft
In this series of short stories, I share tricky situations I’ve encountered while leading teams. These experiences have taught me invaluable leadership lessons and greatly influenced my manag…| CodeKraft
Leading an underfunded team is a challenge most managers will face over their careers. This blog post provides techniques and a framework for delivering impact under such conditions.| CodeKraft
If you are constantly overwhelmed and too busy – something somewhere somehow is wrong. Read on to learn more about my journey from an overwhelmed, feisty, flustered newbie to an equanimous, c…| CodeKraft
In this series of short stories, I share tricky situations I’ve encountered while leading teams. These experiences have taught me invaluable leadership lessons and greatly influenced my manag…| CodeKraft
One of my favorite technical projects involved overcoming a network constraint. The virtual machines (VMs) hosting the core services kept exhausting available ports. Once all ports were used up, ne…| CodeKraft
What if I told you there was a way to overcome that sinking feeling associated with delivering feedback? Yes! You can learn to deliver great feedback with deliberate practice. Read on to learn some…| CodeKraft
Measuring a manager’s impact is hard since outcomes take time. The manager takes full responsibility for the team – be it stagnation, execution woes, poor collaboration, churn, or a lac…| CodeKraft
A team without proven observability and on-call strategies will invariably suffer from reactive disruptions; mitigating outages will be painful, like finding a needle in a haystack while blindfolde…| CodeKraft
Leaders (managers, directors, VPs, etc.) should read this book if they want to create teams that execute predictably; the book also covers culture and other subtle elements that make teams work eff…| CodeKraft
This post offers three tips for leading teams going through a difficult period. It could be attrition, product changes, reorgs, uncertainty, etc. It is a playbook of 3 key things to keep in mind an…| CodeKraft
Most teams struggle with removing friction because they concentrate on surface-level reactionary fixes instead of addressing the fundamental causes of inefficiency.| CodeKraft
This article relates hard-learned lessons as a newbie engineering manager. It targets new leads by clarifying leadership pitfalls to avoid.| CodeKraft
Excellent documentation leads to efficiency gains, insufficient documentation leads to bottlenecks, while poor documentation sprouts confusion.| CodeKraft
Multipliers make or mar engineering organizations – teams that invest in boosting the right capabilities at the right time will get more done with less. Teams that neglect these capabilities …| CodeKraft
The story of the most challenging stretch of my career so far and how I acquired years of leadership experience within months.| CodeKraft
When most teams complain about poor quality, they usually mean reliability woes; however, quality spans a more extensive spectrum and can mean many things. If you complain about your software being…| CodeKraft
The issue with systems that do not ‘fail’ is that they have no fixes when they eventually fail.| CodeKraft