Full-stack developer with 4+ years of experience building end-to-end web platforms, event-driven microservices, and software for the built environment (BIM/LCA). Developer of a production BIM–LCA platform for the National Research Council Canada, with deep expertise across the modern JavaScript/TypeScript ecosystem and Python/Java back-ends.
Actively ship AI-powered, real-time, and mobile SaaS products end to end—from data model and API to deployed UI. Strong focus on scalable architecture (Nx monorepos, type-safe schemas), secure authentication/authorization (OAuth/OIDC/JWT), and production-grade DevOps (Docker, CI/CD, testing).
Skills
Experience Level
Language
Work Experience
Education
Qualifications
Industry Experience
- Live app: [co-draft.rosnik.dev](https://www.twine.net/signin
- Source code: [github.com/rrosnik/co-draft](https://www.twine.net/signin
- Multiplayer editing — multiple people work on the same document simultaneously, with live cursors and presence awareness.
- Rich-text drafting — a full-featured editor with images, tables, links, highlights, and formatting.
- Shared whiteboards — infinite-canvas sketching and diagramming for visual thinking.
- Project portfolios — publish projects, credit your roles, and embed media from YouTube, Vimeo, Behance, and more.
Co-Draft is a real-time collaborative workspace where teams draft documents, sketch on shared whiteboards, and publish portfolio projects together — all in one place.
Links
What it does
Tech stack
Next.js 16 · React 19 · TypeScript · Convex · Liveblocks · Clerk · Tiptap · tldraw · Tailwind CSS 4 · shadcn/ui
- Live app: [meet-ai.rosnik.dev](https://www.twine.net/signin
- Source code: [github.com/rrosnik/meet-ai](https://www.twine.net/signin
- Custom AI agents — create agents with their own instructions and have them join calls as real-time participants, powered by OpenAI’s realtime API.
- Live video & chat — real-time video meetings and in-call chat built on the Stream SDK.
- Transcription & summaries — meetings are transcribed and automatically summarized with background jobs via Inngest.
- Searchable history — revisit past meetings, recordings, transcripts, and summaries.
- Auth & billing — secure authentication and subscription billing built in.
Meet-AI is an AI-powered meeting platform where you create custom AI agents that join your live video calls, then get automatic transcripts, summaries, and a searchable record of every conversation.
Links
What it does
Tech stack
Next.js 16 · React 19 · TypeScript · tRPC · TanStack Query · PostgreSQL (Neon) · Drizzle ORM · Better Auth · Polar · Stream (Video & Chat) · OpenAI Realtime · Inngest · Tailwind CSS 4 · shadcn/ui
- Live app: [puter.com/app/rosnik-ai-resume-analyzer](https://www.twine.net/signin
- Source code: [github.com/rrosnik/ai-resume-analyzer](https://www.twine.net/signin
- Upload & parse resumes — drag-and-drop a PDF resume; it’s parsed and converted to an image in the browser for analysis.
- AI-powered feedback — get an ATS compatibility score plus detailed suggestions on tone, structure, skills, and content, tailored to the target role and company.
- Track submissions — store and revisit past resumes and their feedback across sessions.
- Serverless by design — authentication, file storage, and AI all run through Puter, with no backend server to manage.
AI Resume Analyzer lets you upload your resume, match it against a specific job listing, and get an AI-powered ATS score with tailored, actionable feedback — smart feedback for your dream job.
Links
What it does
Tech stack
React Router 7 (SSR) · React 19 · TypeScript · Vite 8 · Tailwind CSS 4 · Puter.js (auth, storage & AI) · pdf.js · react-dropzone · Zustand
- Track subscriptions — add recurring services and see upcoming charges and renewal dates at a glance.
- Offline-first — data is stored on-device with SQLite, so it works without a connection.
- Secure accounts — authentication and secure session storage keep your data private.
- Native experience — smooth, native UI on both iOS and Android from a single codebase, with haptics, blur effects, and gesture-driven interactions.
Recurrly is a cross-platform mobile app for tracking recurring subscriptions and payments — see everything you’re paying for, when the next charge lands, and what it’s costing you, all in one place.
Links
What it does
Tech stack
React Native · Expo · Expo Router · TypeScript · Clerk · Drizzle ORM · Expo SQLite · TanStack Query · Zustand · NativeWind (Tailwind) · React Hook Form · Zod · PostHog
- Source code: [github.com/rrosnik/acquisitions](https://www.twine.net/signin
- Secure auth — JWT-based authentication with bcrypt password hashing and HTTP-only cookies.
- Layered architecture — clean separation of routes, controllers, services, models, middleware, and validation, using Node.js subpath imports (
#src/*). - Type-safe data layer — Drizzle ORM with Neon serverless Postgres and Drizzle Kit migrations.
- Request validation — schema validation on every endpoint with Zod.
- Hardened by default — Arcjet for rate limiting and bot protection, plus Helmet and CORS.
- Structured logging — Winston and Morgan for request and application logs.
- Dockerized dev & prod — multi-stage Dockerfile with separate
developmentandproductiontargets; Docker Compose runs Neon Local for ephemeral branch databases in dev and connects to Neon Cloud in prod. - Tested — Jest and Supertest for API testing.
Acquisitions is a production-ready REST API built with Node.js and Express, featuring secure authentication, a clean layered architecture, and a fully Dockerized workflow that runs against Neon Postgres in both development and production.
Links
Highlights
Tech stack
Node.js · Express 5 · Drizzle ORM · Neon Postgres · JWT · bcrypt · Zod · Arcjet · Helmet · Winston · Docker · Docker Compose · Jest · Supertest
Hire a Full Stack Developer
We have the best full stack developer experts on Twine. Hire a full stack developer in Ottawa today.