
Strings look simple. Then a user with an emoji in their name breaks your length validation, a Turkish 'i' breaks your case-insensitive comparison, a flag emoji counts as 8 characters, and a UTF-16 encoded JSON file from a Windows partner makes your pipeline emit garbage. The fix isn't 'just use UTF-8' -- it's understanding what 'character' actually means.
Engineering Craft
TypeScript, CI/CD, databases, observability -- the skills that make code production-ready.