Case Study 40-B: Maya Reyes — How Python Transformed a Consulting Practice
Subject: Maya Reyes, independent business consultant Timeline: 18 months after beginning Python Rate at start: $175/hr, 8-12 active clients Rate now: $225/hr, 11 active clients, 4 on portal-inclusive packages Teaching: Monthly "Python for Consultants" workshop, 12-20 attendees, $150/person
Before Python: The Spreadsheet Consultant
Maya had been consulting for seven years before she wrote her first line of Python. She was good at her work — genuinely good, not just experienced. Her clients hired her because she could look at a business, identify the real problem underneath the stated problem, and help them fix it. She had a strong reputation in her niche: financial operations for small and mid-sized professional services firms. Law firms, accounting practices, marketing agencies, architecture studios.
The work itself was intellectually interesting. The administrative overhead around it was not.
At her peak before Python, Maya was spending an estimated twelve hours per week on tasks she was not billing to anyone: compiling monthly reports for clients by pulling numbers from multiple spreadsheets, updating her project tracking system, creating invoices in a template she had built three years earlier and now maintained manually, exporting time logs and calculating totals, and delivering all of it via email threads that had a habit of losing attachments and generating "did you get my last message?" follow-ups.
She was billing $175 per hour. She was working roughly 55 hours per week. She was billing approximately 30 of them.
The Calculation That Started Everything
The specific calculation that pushed Maya to learn Python was, fittingly, a spreadsheet calculation.
She had been tracking her "unbillable administrative hours" for a month as an experiment, curious about where the time was actually going. At the end of the month, she added up the column. It was 48 hours. Four hours per week for 12 weeks. At $175 per hour, that was $8,400 of her own time, spent on work that a computer should have been doing.
She began learning Python the following Monday.
The First Tool: Invoice Automation
Her first Python project was invoicing. She had an existing invoice template in Word, a time-tracking spreadsheet in Excel, and a process that involved copying numbers between them by hand. The manual process took about 90 minutes per client per month. With twelve active clients at the time, that was 18 hours per month of invoicing.
Her first Python script automated this entirely. It read from her time-tracking spreadsheet, looked up client rates and project codes in a configuration file she maintained, populated an invoice template, and saved a PDF. The first version took her two weeks to build and another week to test and debug. It took about 20 minutes to run for all twelve clients.
The time savings in the first month: approximately 17 hours and 40 minutes. At $175 per hour, the breakeven on her learning investment occurred in the second month.
She did not raise her rates immediately. She was not yet sure that Python was "worth something" to clients — it was saving her time, but it was invisible to them.
That changed with the second tool.
The Client Portal: From Invisible to Visible
The invoicing automation was an efficiency tool — it saved Maya time without doing anything her clients could see or appreciate. The client portal was different.
The portal (built in Flask and deployed on a small VPS, documented in Chapter 38) gave clients a private login where they could: - See their current project status and budget utilization - Download their current and past invoices as PDFs - View a simple analytics dashboard showing key metrics for their business - Submit questions without needing to dig up email thread history
Maya launched it with three clients as a beta in month four of her Python learning journey. All three reacted the same way: "I didn't know you did software."
This sentence, which she heard with slight variations from all three clients, was the moment she understood what Python had actually given her. It had not just automated her back-office work. It had expanded what she offered.
One of the three beta clients, a mid-sized accounting practice, asked whether Maya could build a custom version of the portal for their clients — with their branding and specific features. She charged $8,000 for the project. It took her three weeks. That single project paid for approximately 45 hours of the time she had spent learning Python.
Growing the Portal: 11 Clients, 4 on Packages
Eighteen months later, the portal serves 11 active clients. Four of them are on "portal packages" — consulting engagements where access to the portal and ongoing automation services are bundled into a monthly retainer that includes the portal functionality as a core deliverable, not just a bonus. These four clients pay approximately 30% more than comparable clients on traditional hourly billing.
The other seven use the portal as a convenience feature included in their standard engagement. Maya maintains it, adds features based on client requests, and monitors it with a simple health-check script that emails her if anything breaks.
The portal has not "broken" in four months. The health-check emails have all been green.
The Rate Increase: $175 to $225
Maya raised her rate to $200 per hour at month nine, citing expanded service capabilities. She raised it again to $225 per hour at month fifteen.
Both increases were accepted by all active clients without negotiation. Two prospective clients she onboarded after the increase signed at $225 per hour without comment. One of them — the dental practice chain described in the chapter — specifically cited the portal demo as the reason they chose Maya over two other consultants who were also pitching for the engagement.
At $225 per hour, billing 28-32 hours per week (down from 30 billable hours at $175, due to reduced administrative overhead), Maya's revenue is up approximately 26% year-over-year while her actual working hours have decreased. This is what analysts call an improvement in operating leverage.
She calls it "the reason I wish I had learned Python five years ago."
Teaching: Python for Consultants
In month twelve, Maya ran the first session of "Python for Consultants" — a monthly workshop she holds at the local coworking space where she rents a hot desk.
The format: two hours, one focused skill per session, $150 per person, maximum 20 attendees. Topics have included: automating invoicing, building a client dashboard with Streamlit, working with Excel files in Python, connecting to QuickBooks and Xero via their APIs, and sending automated reports by email.
She teaches to the room she was sitting in eighteen months ago: consultants who know their domain deeply, bill well, and spend too much time on work that should not require a human.
The workshop has sold out eight of its twelve sessions. Six attendees have reached out to Maya afterward for individual coaching sessions at her standard rate. Two have hired her for implementation work.
The workshop is now a meaningful revenue stream and, she says, one of the best professional development activities she has ever engaged in. "Teaching forces you to understand things at a level you don't reach just by using them. I understand Python better because I teach Python."
The SaaS Question
Maya is considering whether to productize the client portal as a SaaS product — a version she could sell as a subscription to other consultants, rather than maintaining individual instances for her own clients.
She has done the preliminary analysis. A Python pandas notebook on her laptop contains the unit economics she has worked through: potential market size (she estimates 50,000-100,000 independent business consultants in her target segment), plausible subscription price ($150-300 per month), and the development investment required to convert her current bespoke application into a proper multi-tenant SaaS product.
The economics look interesting. The execution risk is real — she would be building a product business, not a service business, and the skills required to acquire and retain product customers are different from the skills required to retain consulting clients. She has the technical foundation. She is still evaluating the business model.
Her current position: "I will know in six months whether this is the right time. I am not going to rush a decision that will change the nature of what I do professionally. But I am also not going to let the opportunity expire."
She is, in other words, applying the same analytical rigor she applies to her clients' problems to her own.
What Maya Would Tell Her Starting Self
When she teaches "Python for Consultants," Maya ends every session the same way. She asks attendees to imagine themselves in eighteen months and think about what they will wish they had started doing today. Then she tells them what she would tell her own starting self.
Her exact words, lightly edited from a workshop recording:
"I wasted the first two months of learning Python being scared of it. I read tutorials but I did not build anything real. I watched videos but I did not write any code that had to actually work. The fear was: what if I build something and it is wrong, or broken, or embarrassing? What if someone sees my code and thinks less of me?
"What I understand now is that the fear itself was the problem. There is no way to learn to build things except to build things and have them be wrong and broken and embarrassing and then fix them. That is the entire process. The embarrassment is the learning.
"So if I could tell past-me one thing: write code that runs on real data as early as possible. It does not have to be good code. It does not have to work perfectly. It just has to run and try to do something useful. The distance between 'trying to do something useful' and 'doing it reliably' is where everything you need to know lives."
Snapshot: Maya at Eighteen Months
Rate: $225/hr (up from $175/hr at start) Active clients: 11 Portal clients (bundled packages): 4 Monthly workshop revenue: ~$1,800-2,400/month Tools in production: Client portal (11 users), invoicing automation, client analytics dashboard, project tracking system Under evaluation: SaaS productization of client portal What she is reading: The SaaS Playbook by Rob Walling, and rereading the FastAPI documentation
What she would tell her eighteen-months-ago self:
"Build something real this week. Not next week when you have more time or understand it better. This week. Whatever you build will be wrong in ways you will understand in three months. That is how it is supposed to work."