Dev Patel
May 2024 → Dec 2024

Software Engineering Intern

Web APIs for a system migration, and 12+ bugs hunted across four languages and three architecture layers.

The Austin office — simulation software whose customers are the people who build the cars.
Type
Engineering
Where
Ansys
When
May 2024 → Dec 2024
Duration
7 mo
Location
Austin, TX
The brief

The brief

Ansys builds engineering simulation software — a codebase measured in decades, where a C++ core, a C# service layer, Python scripting and an Angular front end all have to agree with each other.

I worked on a migration: standing up .NET and C# Web APIs to replace older interop paths, and moving data between microservices over gRPC and COM. The other half of the job was debugging, which in a codebase that size is mostly an exercise in not trusting the stack trace.

What I did

What I did

  • Implemented .NET and C# Web APIs for system migrations, using gRPC and COM interfaces to move data between microservices.
  • Closed 12+ bugs spanning C#, C++, Python, JavaScript and Angular, using dynamic tracing and memory profiling to locate faults across architecture layers.
  • Built REST/MVC request paths for asynchronous work, batch-script automation for file deployment, and IronPython scripting hooks for simulations.
Measured

Measured

12+bugs closed
4languages debugged
3architecture layers
Architecture

Architecture

Angular clientbrowserIronPythonsim scripts.NET Web APIC# · REST / MVCgRPC + COMtransport layerSimulation coreC++ services
The migration path — new .NET Web APIs in front of a C++ core, with gRPC replacing older interop.
In hindsight

In hindsight

The bugs that cost the most time were the ones where the symptom and the cause sat in different languages — a C# lifetime assumption that only showed up as a C++ crash. I'd invest earlier in reproducing across the boundary rather than instrumenting each side separately.

Stack

Stack

C#.NETC++gRPCCOMAngularIronPythonMVCREST