PROJECTS / CASE STUDY

Image Audit

Turning 80 distributed systems into one operational workflow

A revenue-generating operational application that unified vehicle-image audit work across roughly 80 auction systems, streamlined human review, routed failed images back for correction, and supported manufacturer-facing reporting around a 100% audit guarantee.

← All projects

The problem

Vehicle manufacturers purchased image auditing as an additional service, but the work depended on data distributed across separate auction systems and a highly manual review process. Auditors needed to inspect images quickly, record pass/fail decisions, route rejected work back to photographers, and maintain enough traceability to support manufacturer reporting and service guarantees.

My role

Conceived, designed, and implemented as an end-to-end individual-contributor solution shortly after joining Cox Automotive, spanning process analysis, distributed data access, application design, audit workflow, client-side interaction, reporting, dashboards, deployment, production support, and continued refinement with operational users.

The approach

Technology & capabilities

Skills demonstrated

Outcomes

The problem was not simply the images

Major vehicle manufacturers purchased image auditing as an additional service for vehicles moving through the auction process.

The audit itself was performed by people: reviewers examined standardized vehicle images, confirmed that each required view met expectations, and rejected work that needed to be photographed again.

The challenge was making that human process fast, consistent, traceable, and practical across a large distributed operation.

The underlying information lived across roughly 80 separate auction systems. The reviewers, photographers, vehicles, images, audit results, and reporting all needed to come together in one usable workflow.

Designing around the person doing the work

A major focus of the application was speed.

An auditor might evaluate a large number of images, so even a small amount of unnecessary interaction became expensive when repeated throughout the day.

I spent considerable time refining how images were presented and how the reviewer moved through them.

The application was designed around rapid image navigation, quick pass behavior, and efficient handling of exceptions. When an image failed, the reviewer needed an equally fast way to record the disposition and return the issue to the photographer.

The goal was simple:

make the correct workflow the fastest workflow.

Connecting audit and correction

A failed audit was not the end of the process.

The application retained the vehicle and image context needed to route the problem back to the person responsible for correcting it.

Rather than relying on email descriptions, spreadsheets, or manual reconstruction of the vehicle and image involved, the workflow could take the photographer directly back to the relevant work.

That shortened the path between identifying a problem and fixing it.

One workflow across many source systems

One of the larger technical challenges was the distributed data environment.

Each auction maintained its own AS/400 system, which meant the application needed to locate and interpret vehicle and image information across dozens of operational sources while presenting the auditor with a single coherent experience.

The user did not need to know which underlying system contained the data.

That complexity belonged in the application.

This was an early example of a pattern that would recur throughout my later work: connect fragmented data behind the scenes so the person doing the work sees one usable business process.

Responding when the data model changed

At one point, the underlying AS/400 image-data structures were redesigned substantially.

The production application depended on those structures, so the change immediately created an operational problem.

I analyzed the new data model, identified how the relationships had changed, and adapted the application within hours rather than treating the change as a long redevelopment cycle.

That episode reinforced the value of understanding both the business process and the data underneath it. Knowing what the application was trying to accomplish made it much easier to reason through an unfamiliar schema quickly.

Reporting as part of the product

Image Audit was not only an internal workflow tool.

The service carried a customer-facing commitment: manufacturers expected visibility into the audit process as part of the 100% audit guarantee.

I built the reporting and dashboard layer needed to summarize activity and performance for those customers.

At the time, rich browser-based dashboards required considerably more custom work than they do today. I used third-party visualization components on top of Classic ASP pages and increasing amounts of JavaScript and client-side logic to create a more interactive experience.

That work became one of my earliest substantial experiences with client-side web development.

Fast delivery, long life

I built the first working version of Image Audit within roughly three months of joining the organization and then continued refining it with the operational team.

The application remained useful for years.

That longevity is important to me because the system was not built with a modern framework or a large development organization behind it. It succeeded because it understood the process, solved the operational problem directly, and continued evolving around the people who used it.

Technology in service of process

Image Audit remains one of the clearest early examples of the way I tend to approach technology.

The starting point was not:

“What application should we build?”

It was:

“How does this work actually happen, what slows people down, where does the information live, and how can the system make the process easier?”

The technology followed from those questions.