I am a Full stack javascript developer working from Budapest, Hungary
Mostly experienced in writing complex, high performance javascript web applications π, where every bit and millisecond counts, using technologies like
- Multithreading (Workers, child processes)
- Caching (both on FE-BE side)
- Streams (eg: Node.js streams)
- Raw binary data (eg: typed arrays)
- Bitwise operations
- Generators
β€οΈ Pet project (truzme.com)
A truss calculator utilizing finite element calculations in the browser, including mobiles and tablets. Able to calculate thousands of elements without any BE requests, instantly. I use this tool to explain structural engineering basics to non-engineer friends and my sons, and as a sandbox for testing, learning, and experimenting with new technologies.
- Started as Vue project, it is now React/Next.js + Typescript
- State management: Mobx, mobx-react, mobx-state-tree
- I wrote the FEM calculator from scratch, the modules are separated in monorepos
- Web application development with complex graphical elements (svg/canvas, tables in 2D-3D) π¨ π
- Algorithmic challenges π² π―
- Performance optimization (speed, memory) π π΄
- R&D π± π
- Javascript (Typescript)
- Node.js
- React
- Next.js
- PostgreSQL
- Webpack
- Prettier
- Styled components
- Mobx, mobx-react, mobx-state-tree (side project)
- Map/GeoJSON: Openlayers, turf, Google Maps API
- styled-components
- Material UI (mui 5)
- D3.js
- Redis
- Sequelize ORM
- React-query
- Angular.js
- Reactive programming++
- My favorite algorithm: Topological sort
Quote I remember myself every day working on the Frontend:
Initially, design your state, stores, processes as if you were building a CLI, not a web app (Michel Weststrate)
This quote means more than you think:
There are only two hard things in Computer Science: cache invalidation and naming things (Phil Karlton)