Seven years ago, around this same time, I woke up on a Monday morning and opened my email like I did every day. There was a message that had come in overnight. Sunday, 12:25am. Florida time — big time difference from where we were.
I read it once. Then again. Then stared at the screen, unable to process what I was looking at. It felt like the world had collapsed. Like a truck had hit me at full speed while I was standing still. I don't remember the details of that morning clearly. I remember driving to the office in a fog. Sitting in traffic, forwarding the email to my leadership team, scheduling an emergency call for first thing when I arrived. But let me back up. Because the real story isn't that email. It's how we got there.
January 2017. A new client signed with us. Small project, relatively straightforward: migrate a web application to mobile. The challenge wasn't technical complexity — it was UI. How do you take a dense interface that practitioners use on desktop and make it work on a phone? Everything accessible, intuitive, functional. For six months, it stayed manageable. One designer, two developers. We worked closely with their CEO and Senior Director of Engineering. The relationship was warm, collaborative. Strategy sessions. Detailed discussions about how to make the product better. Then the project started growing. Tablet version. More features. Still within normal bounds.
Then, in 2018, a venture capital fund acquired them. In part, because of the work we'd done. The mobile app we'd built was a huge part of their value proposition. It worked beautifully. Solved real problems for their users. We were proud. They were happy. Everyone won. After the acquisition, everything changed. New CTO came in. The CEO who'd worked with us directly? Gone — too high-level now to deal with a vendor. The Director of Engineering we'd built a relationship with? Also out. New leadership. New priorities. Enterprise mindset.
And the project exploded. Overnight, we went from mobile development to web frontend and backend. The project quadrupled in size. We needed people yesterday. We hired aggressively. Poured money into recruiting, headhunting. Not without challenges, but we grew. And the margins on this project allowed us to invest not just in hiring, but in business development. Sales reps. New markets. Long-term plans. The monthly invoice from this one client was bigger than all our other projects combined.
I told myself I was being cautious. I knew the project was big. I knew concentration risk was a thing. But honestly? That monthly number felt like it would last forever. So many plans. So many opportunities unlocked. This was the breakthrough we'd been working toward for years. We were flying.
The contract was annual, with renewal options. As the renewal date got closer, I felt that knot of worry tightening. The one I'd been ignoring. We'd been assured there were no problems. Renewal was a formality. The conversations about expanding the team continued. We were actively hiring more developers based on their requests. Everything looked solid.
Then that email arrived. Sunday night, 12:25am their time. Monday morning for me.
"Eugene, I wanted to write you to officially exercise our right to terminate the engagement with a 30-day notice. As to the whys behind this move, the team has done a good job, but as a company, we decided to insource (bring in-house) our development to our New Jersey office."
Thirty days. Twenty people on this project. A quarter of our entire team. Half our revenue. Not a word of warning. Not a hint. The decision had been made at a level we had no access to. A board meeting, maybe. Five minutes of discussion. Vendor optimization. Bring it in-house.
What started as warm, personal, founder-to-founder collaboration had turned into cold corporate calculus the moment venture money came in. And I realized: I'd been so caught up in the euphoria — the growth, the revenue, the possibilities — that I ignored the massive vulnerability we'd created. We had a financial cushion. We'd always maintained one. But twenty people? With developer salaries — some earning more than I paid myself? How long would that cushion last if they were sitting on the bench with no billable work? I'd convinced myself this was different. That our relationship was strong. That the work was too valuable to replace. But in enterprise, decisions aren't personal. They're strategic. And vendors — even excellent ones — are expendable.
The founders who'd valued us had exited. The engineers we'd worked with had moved on. The new leadership team didn't know us, didn't owe us anything, and saw us as a line item to optimize. The warning signs were there. I just couldn't see them through the glow of success. When things are going well — when revenue is up, when the team is growing, when a big client validates everything you're building — it's almost impossible to see the risks you're creating. You tell yourself you're being smart. That you're capitalizing on an opportunity. That this kind of growth is what success looks like. And maybe it is. But if you're not watching the concentration, you're building a house of cards.
After that client left, we built something we should have had from the beginning: a system for tracking portfolio concentration. We set a threshold: no single client could exceed 25% of our revenue. We tracked it in a simple Google Sheets dashboard. Target metrics, actual metrics, updated monthly. Once a month, we had a strategic session with leadership where we reviewed those numbers. Our Engagement Manager owned the monitoring. She tracked project timelines, team allocation, contract renewals. She coordinated with HR on hiring, with PMs on capacity, with sales on upcoming availability. If we saw concentration creeping toward the threshold, it triggered action. Sales needed to focus on new client acquisition. HR needed to know there was a team at risk. Finance needed to prepare for potential volatility. It wasn't perfect. But it gave us visibility. Control. The ability to make decisions before we were in crisis mode.
Open a spreadsheet. List every active client. Write down how much revenue each one represents as a percentage of your total. If any single client is above 25%, you're vulnerable. Not necessarily in danger — but vulnerable. One decision you're not part of, one budget cut, one leadership change, and you're in crisis. Now ask yourself: what would happen if that client left tomorrow?
How many people would you need to let go? How long could you sustain payroll? What other clients could absorb that capacity?
If you don't have clear answers, you need a system. Not someday. Now.
Track concentration monthly. Set thresholds. Make it someone's job to monitor and flag when you're approaching risk. Don't wait for the email at 12:25am on a Sunday to realize you've been flying blind.
So here's my question: Would you rather work with enterprise clients — the big checks, the corporate politics, the decisions made three levels above you — or keep it small with warm relationships where you actually know the founder?
There's no right answer. But knowing which one matters more to you changes everything about how you build.Hit reply and tell me. I read every response.
P.S. A few months after the contract ended, we flew to the US for meetings with other clients. The CTO who'd sent that termination email reached out — wanted to meet, record a video testimonial, smooth things over. He did. It was detailed, glowing, specific. Became one of our best case studies. A few years later, the Senior Director of Engineering we'd worked with at the start — the one who'd left when the venture fund came in — he came back to us. Different company, now COO. We worked together again. The relationships mattered. But I'd learned by then: relationships don't protect you from corporate decisions. Systems do.



