Petar Stojanović
Software Engineer

Belgrade, Serbiapetar.stojanovic27@gmail.comlinkedin.com/in/petar-stojanovic-417b34278github.com/Stojanovic27
Software engineer from Belgrade. Most of my work is in React Native and Expo: over the last three years I have shipped apps for ERP vendors, flight schools and consumer brands, often as the only engineer on the product, from architecture and tests to store releases and the documentation the next person needs. On several products I also built the web client in Next.js or Angular and contributed to the FastAPI backend, so I am comfortable working across the whole contract.
Experience
Software Developer, Thilo
Nov 2025 – Present- Lead engineer on WingOps Mobile, an aviation risk-assessment app for flight schools with a schema-driven form engine and background GPS flight tracking.
- Sole engineer on BizniSoft Mobile (~196k lines, 1,000+ test files) and the B2B Order Portal mobile app, and lead on its Next.js web client.
- Designed Link, a seven-package TypeScript SDK for team channels and LiveKit voice and video calls, used across several products.
- Built WingOps Kiosk and Thilo Mobile end to end.
Software Developer, Digital Cube
Nov 2023 – Oct 2025- Built features in ImpresaOne, Telmekom's ERP platform: the React Native app (including the Expo SDK 54 upgrade) and the Angular web frontend.
- Built order-configuration features in Sophie, an Angular and NgRx product.
- Shipped Tipik and took over maintenance of OrthoPrax, two published consumer apps.
- Modernised and re-released the bkube app to meet current Google Play requirements.
Selected projects
BizniSoft Mobile Sole engineer, BizniSoft
2025–now- Sole engineer for 15 months: about 1,850 commits, ~196k lines of TypeScript and 1,048 test files.
- Five licence-gated modes (mobile orders, data terminal, POS, CRM, B2B) plus Serbian SEF e-invoicing.
- Upgraded to Expo SDK 57 and React Native 0.86; wrote the Astro documentation site and release notes.
React Native, Expo SDK 57, TypeScript, TanStack Query, Redux Toolkit, SQLite
WingOps Mobile Lead engineer, WingOps
2026–now- Lead engineer (about 1,030 of 1,240 commits) on a multi-tenant aviation safety app with 692 test files.
- Built a schema-driven form engine with conditional fields and scoring that renders forms defined by the backend.
- Background GPS flight recording, offline storage, QR onboarding and a calendar written from scratch.
React Native, Expo SDK 56, expo-router, Zustand, SQLite, Background location
B2B Order Portal Sole mobile engineer, web lead, BizniSoft
2026- Built the mobile app alone (931 commits, 508 test files) and led the Next.js web version.
- Repository and DTO layer with swappable mock and API implementations, so the app runs fully offline in development.
- White-label builds with a different launcher icon for each brand.
Expo SDK 54, expo-router, Next.js 16, TanStack Query, Zustand, SQLite
OrthoPrax Lead maintainer, Sebastian Press
2024–now- Took over a published consumer app from its original author and became its lead maintainer (335 commits).
- Led the upgrade to Expo SDK 57 and React Native 0.86, including Android Media3 lock-screen controls.
- Recovered five tangled branches into a clean history without losing work, and documented the process.
React Native, Expo SDK 57, Redux Toolkit, RevenueCat, expo-audio, Background tasks
Tipik Sole engineer, Tipik
2025–2026- Built and published the app alone, including the pipeline that generates a year of content from source HTML.
- Wrote a step-by-step runbook so a new year's calendar can be added without me.
React Native, Expo, Redux Toolkit, Notifee, Node.js scripts
WingOps Kiosk Sole engineer, WingOps
2026- Built alone in ten weeks with a ports-and-adapters architecture: all logic is plain TypeScript and tested without a device.
- Offline-first submission queue in SQLite that syncs when the network returns.
React Native, Expo, expo-router, NativeWind, SQLite, expo-video
Packages
Link Principal author, Digital Cube
2026–now- Designed and wrote a seven-package SDK (516 of 543 commits) for text, voice and video, plus its Expo and Next.js reference apps.
- Layering enforced by a test that fails the build when a logic package imports UI code; WebRTC is opt-in so text-only apps stay updatable over the air.
TypeScript, React, React Native, LiveKit, WebRTC, SQLite (WASM in the browser)
Remote Support SDK Contributor and integrator, Digital Cube
2026–now- Extended a published React Native screen-share SDK with live Skia annotations and shipped it inside BizniSoft Mobile.
TypeScript, React Native, Skia, Reanimated, WebSockets
Also worked on: ImpresaOne (Telmekom), Sophie (Telmekom), bkube (bkube), Thilo Mobile (Thilo), BSOne (BizniSoft), Telmekom Robotics website (Telmekom).
Hackathons
- 2025Green Dash (Winner, Infominds challenge)NOI Hackathon – SFSCON Edition, Bolzano. Infominds challenge: make ESG sustainability reports transparent, accessible and interactive.
- 2024RouteBOT (Winner, GRUBER Logistics challenge)NOI Hackathon – SFSCON Edition, Bolzano. GRUBER Logistics challenge: speed up transport tendering.
Skills
- Mobile
- React Native, Expo (SDK 43–57), EAS Build, Submit & Update, expo-router, Reanimated, Skia, SQLite, Push notifications, Background location, In-app purchases (RevenueCat), LiveKit / WebRTC
- Web
- Next.js, React, Angular, NgRx, RxJS, Nx, Tailwind CSS, shadcn/ui
- State & data
- TanStack Query, Zustand, Redux Toolkit, Offline-first sync
- Backend
- Python, FastAPI, Tortoise ORM, PostgreSQL, Redis, WebSockets, Docker
- Testing & tooling
- Jest, Testing Library, Playwright, Cypress, pytest, TypeScript (strict), Sentry
- Languages
- TypeScript, JavaScript, Python, SQL
Education
Bachelor of Applied Science, Computer Software Engineering
The School of Electrical and Computer Engineering of Applied Studies, Belgrade
High school diploma, Computer Science
Electrical Engineering High School “Nikola Tesla”