Martin Adámek is a pragmatic software engineer with 12+ years of experience who started as a PHP/Nette/Doctrine specialist and has successfully transitioned to the JavaScript/TypeScript ecosystem, working extensively with Node.js, Angular and NestJS. He currently contributes to Apify and maintains MikroORM, a TypeScript data-mapper ORM he built in his spare time that supports multiple databases and demonstrates deep understanding of metadata, identity map and unit-of-work patterns. Comfortable across backend and full-stack roles, he has hands-on experience modernizing libraries like Crawlee, updating key dependencies and improving test and architecture quality. Based in Prague with a master's in software engineering from CTU FEL, he blends academic rigor with entrepreneurial experience as a co-founder and long-term freelancer. Colleagues describe him as a methodical problem solver who focuses on durable internals and correctness—evident from bug fixes ensuring correct PK handling and entity schema behavior in his OSS work.
12 years of coding experience
11 years of employment as a software developer
Bachelor's degree, Informatika, Softwarové systémy, Bachelor's degree, Informatika, Softwarové systémy at Czech Technical University in Prague Faculty of Electrical Engineering
Master's degree, Softwarové inženýrství, Otevřená informatika, FEL, 2, Master's degree, Softwarové inženýrství, Otevřená informatika, FEL, 2 at Faculty of Electrical Engineering, Czech Technical University in Prague
Grammar school, General, Grammar school, General at Voděradská 2
TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, MS SQL Server, PostgreSQL and SQLite/libSQL databases.
Role in this project:
Back-end Developer
Contributions:170 releases, 1117 reviews, 2590 commits in 4 years 11 months
Contributions summary:Martin was a backend developer focusing on the implementation of a TypeScript ORM for Node.js. Their commits showcase expertise in the core functionalities of the ORM, including adding functionality to the metadata discovery, and modifying various aspects of the entity schema. The user was also involved in the internal structure, and also in bug fixing and improving the functionality of the framework. The changes include aspects such as ensuring the right PK values and the correct usage of the ORM.
Crawlee—A web scraping and browser automation library for Node.js to build reliable crawlers. In JavaScript and TypeScript. Extract data for AI, LLMs, RAG, or GPTs. Download HTML, PDF, JPG, PNG, and other files from websites. Works with Puppeteer, Playwright, Cheerio, JSDOM, and raw HTTP. Both headful and headless mode. With proxy rotation.
Role in this project:
Full-stack Developer
Contributions:31 releases, 786 reviews, 329 commits in 1 year 10 months
Contributions summary:Martin made significant contributions to the Crawlee web scraping and browser automation library for Node.js. They updated dependencies, including Playwright and Puppeteer, and introduced new classes for Apify and Configuration. The commits also involved improvements in testing, code cleanup, and refactoring the codebase to use more up-to-date features.
web-crawlercrawlersscrapingcrawlingrpa
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.