← Back to the one-pager

The longer version

Two engagements answered against the same six questions — the problem, the constraints I could not change, what I led versus influenced, the approach including an option I rejected, the outcome, and what I would do differently — plus the scope of the account I ran. Then the full set of principles I lead by.

Engagements

A rescue, a build, and a book at scale

Rescue: a modernization program flagged red by the client

Problem

I took over a two-workstream modernization program at a Fortune 100 financial services firm, weeks after the client’s own domain review flagged it red. A legacy platform being rebuilt while it stayed in production. Findings in week one: no delivery methodology, no governance plan, no documented commitments, and nobody — on either side — owning requirements. Requirements were being reverse-engineered out of legacy code.

Context & constraints

Fourteen engineers across two workstreams, some moving between them. A hard seasonal code freeze I could not move, and a client executive who had already lost confidence. I could not change the team quickly, and I inherited a backlog generated largely by AI from the legacy codebase — tickets that looked complete and carried no business logic.

My role

Led. Primary delivery owner and the client’s main point of contact from delivery lead through executive sponsor. Shared the account with a delivery partner; I owned governance, staffing, reporting and client communication.

Approach

Defined milestones with the client rather than inheriting a date, and put one named owner on each. Narrowed three parallel batch jobs to one with a single owner, and reduced front-end scope from five transaction types to one proven end to end, on the reasoning that a repeatable pattern beats five half-finished ones. Rejected: holding the original date and pushing harder — closed volume against work in flight said it would not land, and a missed date after a death march costs more credibility than a renegotiated one.

Progress so far

Nine milestones defined across the two workstreams where there had been none. First two demoed sixteen days after I landed — the first working increment the engagement had ever produced — and presented to the business four days later. On the batch side, specification approved first pass by both client reviewers, stories written the same day, build underway four days after that, on a workstream that had produced no build work at all. My engineer there was promoted to technical lead for work he was already doing, with the client’s explicit backing.

Target — front-end workstream

One transaction type complete end to end by the end of September, in production ahead of the October code freeze. The remaining four types then follow the same proven pattern rather than being rebuilt from scratch. Success is working software in production before the freeze, and a pattern the team can repeat without me in the room. In flight.

Target — batch workstream

Phase 1 delivered ahead of the October freeze: all three template files generating on demand, the four remaining lookup domains defined and built, endpoints standardized, and live service reads replacing reference data with output validated against the legacy system by checksum. The client’s bar is one to two batch jobs live for their seasonal peak — Phase 1 is the first of them. In flight.

Reflection

I moved on governance before requirements ownership, and requirements was the more expensive gap by a wide margin — it has cost more time than engineering capacity ever did. Where a client-side expert owned the specification, the work moved within days. Where nobody would take that seat, it did not. Next time, naming a requirements owner is a condition of the plan in week one, and I escalate the absence of one as a red risk immediately instead of absorbing it.

Build from zero: standing up nearshore delivery inside a new client

Problem

A major airline’s people-data organization needed more delivery capacity than its onshore budget allowed — employee and workforce data being prepared and published to downstream consumers over streaming topics. Delivery cost was climbing, response times slipping, and no scalable lever existed. NEED: the trigger figure — cost trend, SLA miss, or backlog size

Context & constraints

The first nearshore engagement at this client. My firm had delivered nearshore teams elsewhere, but nobody in this organization had worked that way before — so there were bumps, and no internal precedent there to point at. A real communication and working-style adjustment on both sides, equipment to ship across borders, knowledge transfer from client full-time employees to consultants who had never seen the platform, and an expectation of immediate delivery from a team still being onboarded.

My role

Led. Designed the engagement as a fully managed service rather than staff augmentation, and stood up the original team: four nearshore data engineers plus one onshore lead. I owned the operating model, the kickoff, escalation and the client relationship.

Approach

Brought our nearshore practice leadership into scoping before the engagement was sold in, so the scope of work and the right people from the practice were settled up front rather than backfilled later. Always placed a team with a lead on it — never an individual — so someone from the practice was accountable for holding junior engineers to the client’s bar. Rejected: staff augmentation, which would have made the client responsible for managing our engineers and put every quality problem on their desk instead of mine.

Outcome

Grew from 4 nearshore consultants to 22 within eighteen months, and expanded to 4 pods across 3 additional portfolios inside the same technology organization. The second number is the one that matters: those leaders had no obligation to use us. Performance travelled by word of mouth across the organization and they chose to trust the model on the strength of it.

Reflection

The whole thing turned on the kickoff. Getting practice leadership involved early is what made the staffing right; putting a lead on every team is what made the quality hold. Those leads went on to carry business-review content, propose solutions, and recommend how to reach value faster with quality code. They also built our practice culture inside the client while genuinely adopting the client’s, which is why the expansion happened at all. If I ran it again I would formalize that lead role from day one instead of discovering how load-bearing it was.

Scope: 25+ engagements owned inside a 45+ engagement book

The remit

Directly managing 25+ engagements inside an account carrying 45+ — and accountable for the whole account’s delivery, including the engagements I did not own. This is here because it shows what I can carry at once, and because the account grew while I carried it.

Scale

A $20M+ portfolio with 90+ consultants deployed. Two direct reports whose growth I was responsible for. Onsite with the client three days a week. Much of the team was already placed mid-engagement, so I could not renegotiate terms or restaff at will — the levers available to me were structure, attention and standards.

What I owned vs oversaw

Owned delivery on the complex, milestone-based and nearshore engagements, and the client relationship. Oversaw the rest of the account’s delivery, every consultant performing to the client’s bar rather than only mine, and the development of my two direct reports. Made myself the escalation owner rather than the escalation router.

How I ran it

Split the book by complexity and gave my direct reports real ownership of the simpler engagements rather than having them shadow me. Used the three days onsite as a governance instrument rather than a courtesy: risk surfaced in a hallway a week early is cheaper than risk surfaced in a status meeting. Transparent status and business reviews so the client saw risk before it was urgent, and process and compliance controls so the same failure did not recur account to account. Rejected: escalation to leadership as the default path.

Results

92% renewal rate across the account, and gross margin up 1.1 points in a year — 32.3% to 33.4% on $20M+ of revenue, which on a book that size is where the commercial work actually shows. Both direct reports took on more scope. I am not attaching a satisfaction percentage — I cannot source one with an instrument, baseline and sample size, so I would rather state the direction honestly.

Reflection

Splitting the book by complexity was right. Splitting the relationship would have been better — I held the client-facing side too tightly for too long, which made me the bottleneck on my own account and slowed how fast my direct reports could grow. I would also have built the escalation standard before the reporting layer; reporting told me what had already gone wrong, the standard is what changed behaviour.

Leadership

One team, or none of it works

Seven years took me from change control in a regulated manufacturing plant, through project coordination and engagement management, to running delivery portfolios. The technical content changed completely. One thing did not: the work only goes well when the people doing it are set up to succeed — consultants, internal partners, and the client, who is a teammate rather than an audience.

The best outcomes were always achieved when people came together, supported one another, and worked toward a shared goal. Written on four years at a national technology staffing & services firm, 2026

People first, and delivery follows

Not the other way around. A consultant walking into a new engagement is walking into a room of strangers with a client watching. Context before day one, a real ramp plan, and a manager who checks in during week two is the difference between someone who performs and someone who merely survives. Every metric on this page came out of a group of people who were willing to raise a hand before a date was missed.

Recognition has to be specific

“Great job” is noise. I tell people what they did, by name, in front of the people whose opinion they care about — and I name the behaviour, not just the outcome. When someone starts asking where they can step in and help before being asked, that is what gets said out loud, because that is the behaviour that spreads.

Promote the person already doing the job

Titles should follow capability, not seniority or tenure. I have moved people up over more senior peers because they were already performing at the higher level, and carried the awkward conversation with the peer rather than avoid the decision. The alternative — handing someone a title and hoping they grow into it — costs the team more than it costs me.

Feedback runs in both directions

One-on-ones surface what a status report never will. My opening question is usually some version of help me understand your biggest concerns, and the test of whether it was worth asking is whether anything changed afterward. When something goes wrong because expectations were unclear, that is on me for not writing them down — and saying so out loud is what makes the next round of feedback honest.

Build a team, never place an individual

An individual placed into a client is a resource. A team with a lead on it is a capability — someone from our practice accountable for holding the bar, mentoring the engineers below them, carrying business-review content, and proposing how to reach value faster without trading away quality. I also bring practice leadership into scoping before the work is sold, so the people are right the first time instead of corrected later.

Two cultures, both respected

When I stood up a nearshore team inside a client that had never used one, it worked because the team built our practice culture inside the client while genuinely adopting the client’s. Inclusion was not a value statement there, it was the delivery mechanism. A distributed team that does not believe it belongs will not tell you what is going wrong.

None of this is soft, and it is not charity. A four-person nearshore team became twenty-two and expanded into three more portfolios whose leaders had no obligation to use us — because the engineers were held to a high bar and trusted enough to say when something was broken, and because word of that travelled further than any pitch I could have made. Looking after the people is the growth strategy, not a trade against it.