The 7 year itch of software

It’s almost inevitable: someone brings up the topic of a re-architecture. Out with the old, in with the new. Whether it be getting rid of all those nasty 2 page long methods or incorporating the latest and greatest from open source, someone will have a fundamental desire to recreate the system. Undoubtedly, someone will ask … Continue reading “The 7 year itch of software”

Microservice architectures: lessons learnt from the early adopters

Two platitudes reign supreme in tech: “Change is the only constant” and “Hindsight is 20/20.” As our industry has evolved over the last few decades, things have moved from imperative to object oriented and into functional programming; from waterfall to agile processes; from centralized to distributed versioning control mechanisms; and from desktop GUIs to web … Continue reading “Microservice architectures: lessons learnt from the early adopters”

An Open Source Guide to Management

Countless books and articles have been written to fill the vast space created by the breadth and depth of management and leadership topics. At the same time, war stories and tools of the trade have been shared among colleagues over beer and coffee — firsthand experiences that radiate out through blogs and social media posts. … Continue reading “An Open Source Guide to Management”

In Desperate Need of Engineering Talent? Stop Recruiting Now

Why would someone want to work at your company? This question, bred largely out of the intense competition for engineering talent, assails the mind of many recruiters, hiring managers, and executives in Silicon Valley. The natural inclination for many of us: we survey the landscape of successful companies (and great places to work) for best … Continue reading “In Desperate Need of Engineering Talent? Stop Recruiting Now”

Engineering Management Recruiting is Broken — Here’s How to Fix It

Engineering management recruiting is broken. Why? The fundamental reason is that companies have done exactly what comes naturally to them: to be self-centered. They focus on what they want, and unfortunately, this tends to turn recruiting into a skill-set wish list. As a result, companies seek candidates that can check boxes on a job requirement … Continue reading “Engineering Management Recruiting is Broken — Here’s How to Fix It”

Software Development and Gaming

A few months ago, I started to wonder why I like software development. I love coding, but there’s a huge difference between fun coding projects and professional software development in an engineering team. Present me with a technical problem and I will happily devote my time to solving it correctly and efficiently without stressing about … Continue reading “Software Development and Gaming”

How to Hire a Great Engineering Manager

How do you hire a great engineering manager? It’s a question I’ve been grappling with a lot, as the company I’ve been leading has doubled in size every year for the past five years. At times, I’ve thought great engineering managers might not even exist. What is it that a great engineering manager has? Obviously, … Continue reading “How to Hire a Great Engineering Manager”

A Plea for an Equal Opportunity Random

I was reading the documentation for Random.nextDouble() in Java 8 The general contract of nextDouble is that one double value, chosen (approximately) uniformly from the range 0.0d (inclusive) to 1.0d (exclusive), is pseudorandomly generated and returned Nothing new here. It just returns a uniform distributed random value in the interval [0, 1) (uniform means that for any … Continue reading “A Plea for an Equal Opportunity Random”

Meet One of our Summer Engineering Interns, Jiacong He!

Jiacong He is a summer intern at Medallia working with the engineering team. He comes to us from Carnegie Mellon University by way of Shijazhuang, China. What was your first experience with a computer? I was 7 or 8-years-old and my dad, who’s a hardware engineer, brought home his work computer. He taught me Microsoft … Continue reading “Meet One of our Summer Engineering Interns, Jiacong He!”