I have been writing JavaScript fairly comfortably for close to three years now, mostly small to medium sized projects, a few freelance sites, and one internal tool at my current job that I built almost entirely on my own. TypeScript keeps coming up in job postings and in conversations with other developers, and I have started wondering whether picking it up properly is genuinely worth the time investment at this stage or whether it is more useful earlier in someone's learning path than it would be for me now.
Tried it briefly about a year ago on a smaller side project and honestly found the initial experience more frustrating than helpful, spending what felt like a disproportionate amount of time fighting type errors that plain JavaScript would have just let me run past without complaint, only to discover the actual bug myself later anyway through normal testing. That experience left me slightly soured on the whole idea, though I recognize that might just be a sign I gave up too early before actually getting comfortable with it properly.
A colleague who switched over fully about two years ago swears it has genuinely changed how confidently she refactors larger codebases, catching mistakes before they ever reach an actual running application rather than discovering them later through an error in production or during testing. That argument makes logical sense to me, but I have not personally felt that specific pain enough yet in my own smaller projects to feel the pull toward switching entirely myself just yet.
Most job postings in my specific area now list TypeScript as either required or strongly preferred, which is honestly the more practical reason pushing me to reconsider learning it properly rather than any pure interest in the language feature set itself at this point in my career.
For people who made the actual switch after already being comfortable in plain JavaScript for a while, was the initial learning curve worth it for you, and roughly how long did it take before it actually started feeling more helpful than annoying in your day to day coding?