CLAAS Metadiag© — Tractor Diagnostic Solution

An after-sales diagnostic solution used to manage workshop diagnosis for every failure on a CLAAS machine.

CLAAS Metadiag© — Tractor Diagnostic Solution

Organisation

Role

Team Lead (~12 engineers)

Period

2000 — 2010

Tech stack

C#.NET Framework 1.0–3.5WinFormsWPFOpenGLDirectXRS232 / ISO9141 / ISO15765 / KWP2000Visual Studio 6 / 2005 / 2008SourceSafe / Team Foundation Server

More views

Metadiag© is the after-sales diagnostic solution I led the design and development of at CLAAS Tractor over a decade. It grew from a focused diagnostic tool into a complete framework — spanning 100 projects and roughly 2000 classes — used to diagnose every failure on a CLAAS machine across dealer workshops.

As team lead of around twelve engineers, I owned the technical direction end to end: communication drivers down to the protocol level (RS232, ISO9141, ISO15765, KWP2000), a 2D/3D graphical layer combining WinForms, WPF and OpenGL/DirectX, code-generation wizards to keep the growing codebase maintainable, and the packaging and update-distribution pipeline that shipped the tool to workshops.

This is the project that shaped how I think about software architecture: building something that started small and had to scale gracefully to thousands of classes and a decade of evolving hardware without collapsing under its own weight.

Key contributions

  • Estimated and chose the development tools for the project.
  • Analyzed and designed RS232, ISO9141, ISO15765 and KWP2000 communication drivers.
  • Collaborated with hardware interface and controller suppliers.
  • Developed an extensible framework spanning 100 projects and 2000 classes.
  • Built the GUI on WinForms and WPF, with contextual menus and 3D components (OpenGL and DirectX).
  • Designed wizards and automatic code generation to automate redundant tasks.
  • Assisted and advised the developer team, ran code reviews.
  • Handled packaging (Install Shield, InnoSetup) and update distribution via a website.
  • Defined and implemented test procedures, wrote functional/technical specifications and user documentation.