Karol Majewski

Karol Majewski

Product Engineer in Wrocław, Poland (CEST)

About

Technological permaculturist & product engineer building with React, TypeScript, and Next.js.

Curiosity led me to networks, future of work, collective intelligence, incentive design, cognition, governance, organization design, post-Agile, tools for thought, and web3.

Work Experience

2020 — 2023
Remote

Acted as a senior developer and servant leader for the Industry 4.0 branch of RHI Magnesita.

  • The project I was involved with from the start, called Automated Process Optimization (APO), won the Microsoft Intelligent Manufacturing Award in the category “Add Value!”

  • As a servant leader, I helped the team of 5 front-end developers by contributing refactoring, technical improvements, and the migrations that affected multiple projects and libraries, enabling my colleagues to focus on tasks instead of fighting accidental complexity

  • As a Code Owner, I was responsible for ensuring that newly created code met our standards of quality and its integration would not slow down development teams in the long term

  • I initiated Deep Dives, a cycle of workshops where front-end developers could share both their problems and their solutions, ask for pointers, and “talk shop” freely. Contributed talks on React, Suspense, SWR, structuring codebases, unit testing, JavaScript dates, Mock Service Worker, react-query, error handling, and testing design systems

  • I initiated and curated Lessons Learned, a Teams channel for the development team dedicated to sharing short lessons we had learned during everyday work. Working remotely doesn’t create enough opportunities for serendipitous learning and this channel was created to compensate for that

  • Bootstrapped the company design system using Storybook

Technologies used: React 18, React Router 6, TypeScript, react-query, react-aria, Ant Design, i18next, ESLint, OpenAPI Generator, styled-components, Cypress 7, Jest, React Testing Library

Tools used: Nx, Storybook 7, Azure DevOps, Lokalise, Prettier, Zeplin, why-did-you-render

2019 — 2020
Remote

Unsplash is the Internet’s library of freely usable visuals. With more than 50 million images downloaded every month, Unsplash is a bigger player than Adobe, Shutterstock, and Getty combined.

  • Helped the company save money (up to $60k/year) by analyzing the CDN traffic and finding a way to reduce it

  • Helped a team of 2 engineers transition a +100k LOC codebase to TypeScript. This eliminated entire classes of bugs and allowed us to ship faster with confidence

  • Helped improve our Lighthouse scores by using modern performance optimization practices (tree shaking, lazy loading, eliminating wasted renders)

Technologies used: React (server-side rendered), Redux, JavaScript, TypeScript, Node.js, Express, Webpack, CSS Modules, PostCSS, reselect, RxJS, ESLint, Prettier, fp-ts, Cypress, Testing Library, Jest.

Tools used: Heroku, AWS, Sentry, Fastly, Terraform, Lighthouse, SpeedCurve, Travis, Figma.

2016 — 2019
Wrocław

Centra is an e-commerce platform dedicated to fashion and lifestyle brands. Web applications powered by Centra APIs allow brands to cover the full gamut of commerce — including B2C, B2B, and marketplace sales.

  • Led a team of 3 front-end developers

  • Helped migrate a legacy JavaScript application to TypeScript

  • Provided vision and technical leadership for new code

  • Trained interns and junior engineers

  • Designed and supervised summer internships

  • Conducted technical interviews

Technologies used: modern JavaScript (ES2015 and later), React, Redux, TypeScript, redux-saga, RxJS, Ant Design, CSS-in-JS (Emotion, styled-components), PostCSS, CSS Modules, Webpack, Parcel, TSLint, stylelint, Node.js, REST, Jest, Cypress, Storybook, CircleCI.

Tools used: Git, GitHub, Trello, Terraform, AWS, Heroku, Figma, Zeplin, Slack.

2015 — 2016
Remote

Assisted Tobias van Schneider’s team building Semplice, a portfolio system for creative professionals, by offering code snippets the customers could use to fine-tune their portfolios.

  • Provided the team with over 60 suggestions (UX insights, performance improvements, bug fixes and feature requests)

  • Made almost 200 customers happy by helping them with custom CSS and JavaScript/jQuery modifications

Side Projects

Ongoing

Wrocław TypeScript is a community-first series of events in which software engineering professionals and programming enthusiasts can teach and learn, for free.

I’m acting as a co-organizer & community manager.

You can find us on Twitter (𝕏), Meetup, Luma, GitHub, YouTube, and LinkedIn.

Volunteering

2018 — 2021

Learning In Public by solving other people’s React, TypeScript, and Node.js problems. My replies on Stack Overflow have reached over 4.5M people so far.

The platform puts me in the top 1% (TypeScript) and the top 5% (React, Node.js.)

2020
Wrocław

If something is stupid, but it works, then it's not stupid. In this short talk, I shared a few TypeScript-specific techniques others might also find useful.

2020
Wrocław

In less than 10 minutes, I explained the concept of a type guard in TypeScript and demonstrated its use cases along with some extras.

Snippets of code used in the presentations can be found on GitHub and as GitHub Gists.

2019
Wrocław

A personal collection of the most confusing and exotic TypeScript problems I ran into. Slides available here.

Education

2010 — 2016
MSc, Power Engineering/Renewable Sources of Energy at Wrocław University of Technology
Wrocław

Master’s thesis: Numerical simulation of fluid flow using NVIDIA CUDA parallel computation technology

Contact

LinkedIn
Twitter