Claude Certified Architect - FoundationsCCAR-F Learning Guide
Case study · fictional company

Lakeshore Freight

A freight company building an internal developer productivity agent on the Agent SDK to help engineers explore and change a large, 15-year-old codebase.

The business

Lakeshore Freight, based in Chicago, Illinois, runs freight booking and tracking for 3,000 business customers. Its core platform, "Portside", is about 15 years old: 1.2 million lines across Java services, a TypeScript web app and SQL stored procedures.

The agent

The developer experience team is building an internal agent with the Claude Agent SDK. It uses the built-in tools (Read, Write, Edit, Bash, Grep, Glob) and two MCP servers:

MCP serverSourceWhat it offers
Issue trackerAn existing community serverSearch and read tickets
portside-graphBuilt in-houseCall graphs, type hierarchies and module dependencies for Portside

What engineers ask the agent

  • "How does a booking become an invoice?" (touches about 40 files in 6 modules)
  • "Find every place that throws RateLimitExceeded."
  • "Add tests to the pricing module." (about 9% line coverage today)
  • "Rename this method everywhere." Some functions are re-exported through two or three wrapper modules.

What goes wrong today

  • Asked to explain billing, the agent read all 30 files in the billing directory and ran out of context before answering.
  • The agent prefers Grep over portside-graph even for call-graph questions, because the MCP tool's description is one line.
  • Edits fail in older files where the same boilerplate appears many times.
  • Sessions that run for hours start giving vague answers ("the usual repository pattern") instead of naming the classes they found earlier.
  • A crash halfway through a long investigation loses everything found so far.

People

StakeholderCares most about
Director of Engineering (sponsor)Faster onboarding: new engineers productive in weeks, not months
Developer experience leadAn agent that is reliable on a codebase this size
Senior engineersAnswers that name real classes and files

Exercises set here