Ivan Grishin
Summary
Web Software Engineer with over 12 years of experience. I began my journey in design, transitioned into web development, and eventually took on leadership roles. I'm proficient in creating design systems, love working on libraries and tools, and am passionate about enhancing user experience. I've participated in a wide range of projects, from design-focused non-profits to fintech startups.
Web Software Engineer @ Apron Payments
September 2022 - Now
I joined Apron Payments during its seed round of investment as the second web engineer. In the first year, we built a complete solution for managing payments for business owners and bookkeepers with the goal of making their lives easier. We've successfully launched a product to the public and raised our Series A funding in summer 2023. Since then, we redesigned the app, expanded product features, scaled the product to multiple platforms, and hired our third web engineer.
Projects
- 2023: getapron.com
- Together with the second developer, created the landing website in a super short time-frame (~week)
- 2022: Apron Payments App
- Participated in the development of every feature (except invoice capture)
- Created a shared component library & design system
Lead Web Software Engineer @ Revolut
November 2018 - August 2022
I joined Revolut in November 2018 as a Senior Web Software Engineer on the Revolut Business team. During the first years, I participated in creating the Acquiring product and, outside my core responsibilities, took ownership of the shared component library that the Revolut Business team had.
The efforts in the Acquiring Team and contributions to the component library led to my promotion to a lead role in July 2020. After that, I was responsible for creating and managing a new web design system team within the company. As a result, I oversaw a significant redesign and unification of all our web products. We built and maintained the components library, design tokens, guidelines, and tools for other web engineers.
Projects
- Revolut UI Kit
- Took ownership of the component library & design system used by web projects
- Significantly contributed to the component library development (single maintainer in the beginning)
- Created a new team in the technology department which was responsible for the Unified Design System for Web
- Worked as a core contributor, manager of 2 people in the team, and (in a way) product owner who set KPIs for the team
- Collaborated with stakeholders, engineers, and designers
- Worked on components, design tokens, documentation, pattern library, and internal blog
- Acquiring
- Started Public API documentation
- Started RevolutCheckout.js widget for accepting payments on external websites
- Revolut Business
- Started and maintained a merchant dashboard for Acquiring
Web Developer @ Strelka Institute
December 2015 - November 2018
The institute ceased to exist after the start of the war in Ukraine. The links in the text below may not work anymore.
I started working as the second developer in a small team of three people, including a designer, developer, and project manager. Initially, I assisted with ongoing projects. Next, we developed a site for educational programs in partnership with the Higher School of Economics (advancedurbandesign.com) and a special project for Strelka students based on their research about malls in Seoul (the-m-all.com). These were my first serious end-to-end projects in the trade.
Since the middle of 2016, I have worked as a lead web developer. The most significant projects for me were the next version of strelka.com and strelkamag.com. For both, I developed a WYSIWYG editor and shared component/design system library.
Projects
- 2018: inthecity.strelka.com
- Next.js
- Featured on hoverstat.es.
- 2018: strelkamag.com and next strelka.com
- Express, React, Redux, SSR, ES2017, Emotion, Slate.js
@strelka/components
— components library / design system@strelka/redactor
— WYSIWYG editor based on components
- 2017: blog.thenewnormal.strelka.com
- ES2015, PostCSS
- Tumblr theme
- 2017: thenewnormal.strelka.com
- Vue.js, Vuex, SSR, Express, Stylus, PostCSS
- Featured on hoverstat.es, siteinspire
- Project overview: https://karalevich.com/cases/the-new-normal
- 2016: shop.strelka.com
- Meteor on backend, ES2015, React, Radium
- Widget and API back-end
- 2016: advancedurbandesign.com
- Meteor, CoffeScript, Stylus
- Featured on siteinspire
- 2016: the-m-all.com
- Vue.js, Redux, ES2015, Stylus
- Featured on hoverstat.es
- 2016: Digital Russia, Vector Blog
- Meteor, SSR, React, Redux, draft.js, ES2015, Stylus, Flow
- Admin panel / WYSIWYG page editor based on draft.js
Contributions
- 2015-2018: strelka.com
- PHP, jQuery
- Legacy website of Strelka Institute
- 2016-2018: apply.strelka.com
- Meteor, CoffeScript, Stylus, Jade
- Internal platform for student application process
- 2015: bigfuture.ru
- PHP, jQuery
- 2015: futureurbanism.com
- WordPress, PHP, jQuery
Designer + Developer @ Foremost Design
2012 - December 2015
Small independent design studio in Moscow. The company no longer exists.
- Frontend (HTML / (S)CSS / JS / Vue.js / CoffeeScript)
- Web and iOS UI designer (Sketch, Adobe Photoshop, Illustrator, and After Effects)
Designer + Developer @ Personal or Freelance
December 2009 - Now
Projects
- 2021:
lil-match
- Super small pattern matching library for TS projects
- 2020:
nano-slots
- A super lightweight slot implementation for React
- 2020: piny for server, ios and web (wip)
- Personal social bookmarking service
- 2019: electricred.design
- Next.js, React, SSR
- 2019:
ya-fetch
- Tiny library for making
fetch
requests easier
- Tiny library for making
- 2019: goremykina.com
- React, SSR
- Design and development
- Site for my Mom
- 2018:
pss
- Design system and react component library
- 2018:
react-universal-data
- Library for fetching data in React applications on server and browser
- 2018: geocinema.network
- Nuxt.js, Vue.js
- Small project for Strelka Students
- 2017: vishvish.design
- Vue.js, SSR, Feathers.js on the backend
- In the admin panel, you can view site changes in real-time
- 2017: uborevich.ru
- Vue.js, SSR
- Pages are generated from static
yaml
documents with caching by change date till forever
- 2016: superslovo.madebyfork.ru
- Vue.js, SSR
- Pages generated from
svg
andmarkdown
files at build time - Small project for friends
- 2016: mipt.ru/english
- ES2015, Jade
- Static templates
- 2014: demidoff.info
- WordPress theme (PHP, SCSS)
- Design and development
Education
Interface Development School @ Yandex
September 2015 - November 2015
Bachelor of Design @ HSE
2009 – 2013
Skills
Development
- Creating libraries, design systems
- TypeScript, JavaScript, Swift v5+
- CSS-in-JS, (S)CSS, Stylus
- HTML, Markdown, Pug
- Unit & E2E testing
- Node.js v8+, Deno v1+
- React, SwiftUI (beginner), Vue.js, Blaze, jQuery
- MongoDB, SQLite, Postgres
- Creating REST API, Web Sockets
- Vite, Next.js, Rollup, Webpack, NPM scripts, Babel, Gulp
- Docker, Vercel, Dokku
Other
- UI / UX, design in code (responsive versions, interactive prototypes)
- Figma, Sketch, Framer, Adobe Photoshop, Illustrator, After Effects
- English (IELTS 7), Russian (native), Ukrainian
- Prefer macOS