Success Story
Sheffler & Company: from a Wix page to running their proposals
Before they could price a job, somebody had to dig through county and state websites, and every proposal was put together by hand in Word. A 50-year-old engineering and surveying firm hired me for a website. Two years later their leads, their site research, and their proposals have a home in software I built for them.
Sheffler & Company
Introduction
Client
Bud Sheffler
Founder
Industry
Civil Engineering & Land Surveying
Sewickley, PA
Relationship
Since 2024
4 projects · ongoing
Live site
shefflerco.comWhat I did
Stack
The arc
Working together since 2024
- 2024Website
A front door that matched the firm
Half a century of serious work behind a Wix page. I rebuilt the public face of the company, and absorbed an acquisition halfway through the build.
- 2026Advisory
Being right and early is still being wrong
I pitched an AI systems audit. They passed. The diagnosis was correct and the packaging was not, and that failure is what taught me what to come back with.
- 2026App
Their whole proposal process, as software
Leads in a spreadsheet, research spread across county websites, proposals assembled by hand in Word. Version one shipped in 44 days: lead pipeline, site research with cited sources, a playbook of their own scope language, and a proposal generator.
- 2026 — presentApp
Shipping what the team asks for
Once people started using it on real jobs, the real requests showed up. Engineering proposals, many properties per job, drive time from the office, a company-wide proposal number ledger, and the controls that make a team trust software with their name on it.
At a glance
-
Two years, four chapters, and the work moved from the marketing site into the operation itself.
-
Replaced a basic Wix site with a presence that matches 50+ years of earned reputation, absorbing an acquisition mid-build.
-
Shipped version one of a custom internal portal in 44 days: lead pipeline, site research, a playbook of their scope language, and a proposal generator.
-
Every site lookup pulls live public data and cites its source, so the person writing the proposal can check any finding in one click.
-
Rebuilt their scope language from 1,568 proposals they had actually sent, so the generator writes the way they already write.
-
Proposals are edited in a document that matches the Word and PDF download page for page, because their letterhead is the deliverable.
-
Still shipping: 391 commits and counting, most of the recent ones straight from the team's own requests.
The short version
Sheffler & Company has been surveying and engineering land in western Pennsylvania for more than fifty years. In 2024 they hired me to build a website.
In 2026 I pitched them something bigger and lost. Five months later I came back with something specific, won it in the room, and built the software to run their proposals on.
Today the leads from their website land in that portal, their site research starts there, and a proposal can be built start to finish inside it. I’m still adding to it most weeks. The website is the least interesting thing I’ve done for this client.
This is the story I point to when someone asks what happens after the website.
The website
Bud Sheffler runs a firm his family name has been on for half a century. Licensed surveyors and professional engineers, work across Pennsylvania, Ohio and West Virginia, the kind of company that gets hired because someone’s father hired them.
Their website was a Wix page. Not broken, just small. It described a company a fraction of their size and said nothing about why fifty years of continuous operation in this field is unusual and hard.
What I built. A real marketing site: the service lines separated properly, surveying and civil engineering each given room, the project history treated as evidence rather than a list. The nicest lead form I had built at that point, with conditional logic that routed an inbound request to the right discipline based on what was actually being asked for. That mattered more than it sounds, because “I need a survey” and “I need a stormwater plan” go to different people and used to arrive in the same inbox.
Then they bought a company mid-build. Sperdute Land Surveying was acquired while the site was in progress, which meant a brand with its own history, its own clients and its own domain had to land inside a site that was not designed for it. I folded their presence into the new structure and built a bridge landing page on the acquired domain, so anyone arriving from the old brand understood what had happened rather than hitting a dead end.
The site launched in under four months and they went onto a care plan. That could have been the end of it. For most web projects, it is.
The audit they said no to
In January 2026 I came back with something bigger. I had been watching how they worked for a year and a half by then, and I could see that the interesting problem was not their website.
So I built an AI systems audit and pitched it.
They passed.
I am including this because it is the most useful part of the story. The diagnosis was right. The packaging was wrong. I was selling a category to a firm that does not buy categories, asking a fifty-year-old engineering practice to fund a study of itself, and nobody in that room could point at a specific thing it would fix on a Tuesday.
Being right and early is still being wrong. What that no bought me was five more months of paying attention, and the next time I came back it was not with a framework. It was with the exact bottleneck, priced, with a working prototype attached.
The portal
Here is what I found once I stopped pitching and started asking.
What I found
Leads lived in one Excel file. A new tab every year, filled in by hand, with yellow highlighting doing the job of a status column. A meaningful chunk of it, in writing from their own team, lived on a whiteboard in the office.
Every proposal started with research. Before quoting a job, someone had to work out what the site actually demanded: flood zones, slopes, soils, streams, road ownership, parcel boundaries, mine subsidence, wetlands, and then the zoning and stormwater ordinances for that specific township, because every municipality does it differently. That meant a handful of county and state websites per property, out of more than thirty sources across the counties they work in, plus reading ordinances. An engineering proposal could take a couple of hours of real work, and it rarely got those hours in one sitting.
Then the document itself. Basic survey proposals were built from a library of about thirty Word templates, copied and pasted to avoid typos. The aerial exhibit that goes in the back meant a screenshot of the tax map, a markup in two other programs, a clip, and a paste into Word. About half an hour of any proposal was just fighting the formatting.
And the risk lives in the research, not the document. This is the reframe that won the room, and it’s the whole reason the project exists. Everyone assumes the expensive part of a proposal is writing it. It isn’t. The expensive part is figuring out the scope, because scope drives price, and if you get the scope wrong you either lose the job or eat the difference. And if the client can’t get their permit because the scope missed something, the proposal failed at the one thing it was for.
The goal, as it was put to me in the room, was a response in hours instead of days, because the longer a proposal sits, the longer a client has to shop around.
A prototype and a yes in the room
I built a clickable prototype of the whole thing before the meeting, and pitched it to Bud and his team in person in Sewickley on June 24.
They said yes on the spot. The first commit went in the same day.
Research that cites its sources
An address goes in, and the portal looks up the property against live public data: parcels across their counties, FEMA flood zones and floodways, the state’s stream designations (the one that can swing a fee), wetlands, streams, slope, soils, underground mines, landslide-prone areas, state highway frontage and oil and gas wells. It shows the exact township to search for ordinances, flags whether the job is likely to trigger stormwater permitting, and lists the other sources worth checking for that county.
Every portal screenshot in this story comes from a demo copy running on invented data. The leads, people, addresses, and parcels are made up, and none of it is Sheffler’s.
None of it is guessed. Every finding is a direct lookup against the live source, it says where it came from, and it links there.
That rule came from Katrina, who has been doing this work for about twenty-five years and was the most valuable skeptic on the project. Her standard, non-negotiable, was simple: show me the source. Every output cites where it came from, pulls from live data rather than a cache, and leaves the judgment with a human. She was completely right, and designing to her standard is why the thing is trusted enough to use.
It also builds the aerial exhibit for them now, with the parcel marked on it, which replaces that four-step screenshot routine.
Their proposals, rebuilt from their own
I got read access to their proposal archive and went through it. 1,568 proposals they had actually sent, across two years.
That became the Playbook: their services, the scope lines they really use, the if-then rules that decide what a job needs, their fee rules and their sources, all in one place the company owns and edits themselves. A lot of it came straight out of Katrina’s head, where, by her own description, every task depends on an “if this, then that.”
The Proposal Generator sits on top of it. You pick the services, tick the scope, and the proposal writes itself in their own wording, on their letterhead. Then you edit it in a real document that matches the Word file and the PDF download page for page. That one item ate days on its own, and it’s the reason the output looks like theirs rather than like software. For a firm whose letterhead has meant something for fifty years, that is not a detail.
ALTA surveys get their full Table A, all twenty items, laid out like their own form, instead of being copied in by hand.
One place for every lead
The website form now feeds a real lead queue instead of an inbox, without disturbing the info@ address they still rely on. Phone calls and walk-ins get added by hand. Every lead carries its status, the people assigned to it, a timeline of every call, email and change, its files, and a red flag when it has sat untouched too long.
Nothing is ever deleted. Things go to a trash with a restore button, because the fastest way to lose a team’s trust is to lose their work.
44 days
Won on June 24. Version one delivered by August 7. I had quoted roughly a month, targeting under two.
296 commits and 45 database migrations in that window.
I want to be plain about why that number matters, because I have spent years being too modest about it. A custom multi-user platform with live site research, a document pipeline and a permissions model was, not long ago, a six-figure build on a six-month timeline. It is not that anymore, for me. That isn’t a claim that the work got easier. It’s that I have spent two years building a way of working that compresses it, and the judgment about what to build has become the expensive part rather than the typing.
Rolled out beside the old process
Not as a switch. In July we opened it to the core group who actually write proposals, running in parallel with the existing inbox and spreadsheet, with a feedback button on every screen that takes a note, screenshots or a voice memo.
Their slow season is the right time to change how a business quotes work, and running both processes side by side means nobody’s livelihood depends on my software being right on the first pass. The fastest way to kill an internal tool is to force it on people before it has earned their trust.
Living with it
Version one was the part I could plan. Everything after August 7 came from people using it on real jobs and telling me what was missing, and honestly that’s my favorite part of the whole project.
What the team asked for, and got
- Engineering. The surveying side shipped first. Engineering followed on August 11 as its own services, with scope and fee wording taken from dozens of their own engineering proposals.
- Drive time from the office. Every property shows road miles and a realistic weekday drive time from their office, with the route, because travel time is part of what a job costs.
- More than one contact, and more than one property. A real project can involve several people and a couple dozen parcels across more than one county. Each parcel is its own row with its own county, so the proposal lists them the way a surveyor expects.
- Research that follows the municipality. Ordinance searches target the actual township or borough, not the mailing address, which in western Pennsylvania are often not the same place.
- Their ALTA template, complete. ALTA proposals now carry the rest of their standard template.
- Sending the right leads to the right company. Leads meant for the surveying company they acquired get forwarded there, files and all, in one click.
- Files named the way they file them. Exports come out named exactly the way their office already saves proposals.
Built to be trusted
- A finished proposal gets locked. Changes after that mean a new revision, so what went to the client is always what’s on record.
- One proposal number ledger for the whole company, so there are never duplicates and nobody can shift the sequence by accident.
- Roles named after real jobs, enforced in the database, not just hidden in the interface.
- People get deactivated, never deleted, so every old lead still shows who handled it.
- A plain-English Guide written for someone brand new, which says right up front that the portal doesn’t price jobs or send anything on its own.
- Nightly backups of the data and files, off the platform it runs on.
- A quiet snapshot of every generated proposal, taken the moment it’s produced, so I can see exactly what people change afterwards and make the next one closer.
As of late September it’s at 391 commits, it’s taking real leads from their website, and changes are still shipping straight from the team’s requests.
Where it could go next
A potential next phase would carry the portal past the proposal, into what happens once a client says yes.
Why this one matters to me
I built these people a website in 2024. In 2026 I am rebuilding how they quote work, with access to their pricing logic, their institutional knowledge and their staff’s daily workflow.
Nobody gets handed that on day one. You get it by being around long enough, being wrong in front of them once, and coming back with something specific.
If you are reading this deciding whether to hire me for a marketing site, this is the honest pitch: the website is where I start, not where I stop. What I actually want is your business, in detail, and the parts of it that are quietly costing you money.
Mark was amazing and very patient with us. He took the time to really understand our company's services, how we came to be established in the civil engineering and surveying fields and what we were trying to accomplish with our website redesign. His suggestions were spot on and took into consideration things we didn't necessarily consider as insiders working in our field everyday - the little things that get overlooked but make a big difference. We are now able to get most, if not all of the information we need up front so we can get proposals out quickly. Mark's expertise in his field, as well as his view as the outsider looking in, has helped us tremendously. We've already had up uptick in visitors to our site and plan to move forward with even more website improvements in the future.
Want a story like this?
I take on a limited number of builds per quarter. If you're a small business owner who knows something is off and isn't sure how to name it, start here.
Work with meMore success stories
Pindrop
Pindrop: he built the platform, I told him what he couldn't see
Three weeks old, signing people up faster than anyone could watch, and custom domains, the thing his customers needed to go live, would not work. He is not a developer and he built all of it himself. I came in from outside, fixed it in a day, and then spent a session on where the product actually goes.
The Jerome Bettis Bus Stops Here Foundation
The Bus Stops Here Foundation: I built their second website, then told them to delete it
Their site was built by a developer who was gone, and nobody at the foundation could change it. I moved Jerome Bettis's foundation onto something its own people could run, built its golf tournament a site of its own, ran both for four years, and then told them the tournament site should stop existing.

