SDK in Python and TS
You maintain the same SDK in two or three languages, and the same bug gets fixed separately in each.
Where it goes wrong
Too much goes into the shared layer, and mixing two async runtimes multiplies complexity that belongs to neither team. By the time this is starting to hurt, it is already being used in production, and each SDK's users are depending on the implementation. Bugs in an SDK become bugs in the shared core, and the set of people who can fix those is limited.
How I'd handle it
Together with the team, I work through the decisions that determine whether this succeeds. First we decide where the line sits between the shared core and each language's SDK, and then what the binding strategy on each side should be. Then come the build, packaging and release: how the artifacts are versioned and ship relative to one another. That whole workstream gets underestimated, and it is where these migrations often stall.
Last, we decide who maintains what afterwards, which is a team question more than a technical one and is better settled up front than discovered later. What you get is a written recommendation explaining the reasoning behind each decision, plus a phased migration plan that keeps both SDKs shipping throughout.
Recognize this on your team?










