Josh profile photo

Author, speaker, and open source maintainer on projects in the TypeScript ecosystem such as Learning TypeScript, typescript-eslint, and TypeStat.

Projects

  • Learning TypeScript

    O'Reilly book teaching TypeScript for JavaScript developers. Out now - buy it today on Amazon / O'Reilly!

  • typescript-eslint

    Maintainer on the tooling that enables ESLint to work with TypeScript code and provides TypeScript-specific rules.

  • TypeStat

    Converts JavaScript to TypeScript and TypeScript to better TypeScript with static analysis.

  • FullScreenMario

    College project: an HTML5 remake of the original Super Mario Bros. It had the original 32 levels, a procedural map generator, and a level editor. Shut down by Nintendo's DMCA notices.

  • FullScreenPokemon

    Spiritual successor to FullScreenMario on my custom game engine. It'll have the original 151 and campaign, a procedural map generator, and a level editor. Work in progress.

  • Budgie

    Abstract metaprogramming syntax that compiles into common OOP languages. Work in progress.

  • Emojisplosion

    Blasts emoji like fireworks all up in your HTML page. Great for easter eggs, pranks, and other shenanigans.

  • See more projects on my GitHub.

Talks

You can find my speaker rider at JoshuaKGoldberg/speaker-rider.

History

Codecademy
2019-2022

Founding member of Codecademy's Web Platform team. It creates and maintain tools used by frontend developers across the company, from design systems to React testing utilities to mass TypeScript conversions.


I previously toured Codecademy's Learner Experience team, which focuses on improving the core user experience of our content authoring and consumption platforms, and Codecademy's Growth team, responsible for improving user happiness & revenue growth via iterative experimentation.

Microsoft Sway
2016-2018

Through November 2018 worked on Sway, an education-focused Office app. I focused on web client performance, front-end engineering systems, and static code analysis.


Co-architected a full rewrite of Sway in React+MobX+Inversify+Glamor, later released as the Print to Web view in Word.

  • Engineer in CRM sales vertical. My team focused on integrating Azure machine learning for sales insights in the desktop and mobile apps.

  • Intern on AX Internal Support. Created dynamic search aggregator for Lucene or proprietary databases to aggregate cross-source references.

  • Schalk Lab
    2012-2013

    Set up neuroscience lab Drupal website and internal NAS, created a MySQL database management system in Matlab, and worked on BCI2000.