CALLL. Stojiljković NODEBelgrade / Београд YR MMXXVI 0b11111101010 REGRAF // CS · final yr OPEN_TO_ROLES

> whoami LUKA D. STOJILJKOVIĆ — СТОЈИЉКОВИЋ

$> CS operator from Belgrade. I build full-stack platforms, ship autonomous LLM agents, train neural networks from first principles, and write compilers — sometimes all in the same week.

LOG_001

EDUCATION_

20232026
SCHOOL OF COMPUTING — RAF
Bachelor of Computer Science · Union University · Belgrade
ACTIVE
20182023
FACULTY OF MATHEMATICS
Computer Science · University of Belgrade
CLOSED
LOG_002

WORK_HISTORY_

05.202501.2026
SOFTWARE DEVELOPER // AI in AEC
AEC AI consulting startup

Designed and shipped two web applications. Neostack — a prototype platform that helps engineering firms catalog their software stack and license usage. AI in AEC Flow — an internal time-task and revenue-tracking system that lifts the firm's day-to-day operational performance.

SHIPPED
LOG_003

SOFTWARE_ENGINEERING_

BANKA_2 // full-stack banking platform + AUTONOMOUS_LLM_AGENT

> Twenty-five operators on the team. Authored the majority of every tier & shipped a fully self-hosted LLM banking assistant on top.
// TEAM 25 operators led
// TESTS_BE 2,165 JUnit · Mockito
// TESTS_FE 1,254 Vitest + Cypress
// LLM offline agent runs

I led a 25-person engineering team through full-cycle delivery of an enterprise banking platform — and personally authored the majority of the codebase across every tier. Spring Boot microservices on the backend (auth, accounts, cards, payments, FX transfers, securities and options trading, OTC, loans, margin, portfolio, audit logging) covered by 2,165 JUnit and Mockito tests; a React 19 + TypeScript web client tested by 1,254 Vitest unit specs and a complete Cypress end-to-end suite; a native Kotlin / Jetpack Compose Android app at full feature parity; and the Docker-based DevOps tying it all together.

On top of that, I architected and shipped Arbitro — an autonomous LLM banking assistant with tool-calling, multi-step wizards, RAG over the platform's specification documents, and SSE-streamed responses — running fully self-hosted on Ollama with a Gemma 4 E4B model and ChromaDB embeddings. No third-party API calls, no data leaving the bank.

  • java_17
  • spring_boot
  • spring_security
  • jpa
  • jwt
  • postgres
  • junit5
  • mockito
  • docker
  • react_19
  • ts
  • vite
  • tailwind
  • vitest
  • cypress
  • kotlin
  • compose
  • hilt
  • retrofit
  • ollama
  • gemma_4
  • chromadb
  • rag
LOG_004

AI__ML__DEEP_LEARNING_

// A spread of work across the modern ML stack — from hand-derived numerical linear algebra and bare-NumPy implementations of foundational algorithms, to fine-tuned transformer pipelines, multimodal architectures, and fully autonomous local LLM agent systems.

// agents

multi_agent_research_llm

Six locally-hosted ReAct agents with dynamic handoff, orchestrating term definitions, multi-paper synthesis, narrative comparison, LaTeX-to-PDF report generation, and Bloom's-taxonomy quiz authoring through Wikipedia, arXiv, and Semantic Scholar. Runs entirely offline on LM Studio with gpt-oss-20b and DeepSeek-R1. Group project.

  • python
  • lm_studio
  • react_pattern
  • multi_agent
  • arxiv
  • latex
// asr

serbian_realtime_speech_recognition

A streaming ASR pipeline that captures microphone audio with a hybrid VAD (RMS gate, WebRTC VAD, impulse rejection by rise-fall ratio, with a 15-frame lookback that recovers the leading 50–100 ms most front-ends miss), and transcribes each utterance with a fine-tuned Wav2Vec2-XLS-R-300M model. Live Latin preview while you speak; final Cyrillic transcription. ~0.29 WER on conversational Serbian. Group project.

  • pytorch
  • torchaudio
  • wav2vec2
  • huggingface
  • webrtc_vad
  • flask
// multimodal

petfinder_multimodal_adoption

Trained and benchmarked seven PyTorch architectures — TabularMLP variants, a custom CNN, pretrained ResNet18, and three multimodal fusion networks — on Kaggle PetFinder.my to predict adoption speed from structured features and shelter photos. The smallest fusion network beat both an 11M-parameter ResNet and the deeper variants — capacity ≠ generalization.

  • pytorch
  • torchvision
  • resnet18
  • fusion
  • pandas
// from_scratch

nn_lib_from_scratch__numpy

Hand-derived deep-learning library in pure NumPy: dense layers, ReLU, Softmax, fused softmax-CCE with the analytical y_pred − y_true gradient, and four optimizers (SGD with momentum, Adagrad, RMSprop, Adam with bias correction and lr decay). Trained an MLP on MNIST end-to-end without any autograd.

  • numpy
  • mnist
  • scratch
  • backprop
// behavioral_cloning

self_driving_cnn__udacity_sim

From-scratch decision tree and 2-layer NN with manual backprop on the Titanic problem, plus an NVIDIA-architecture CNN trained on Udacity simulator dashcam triples (steering augmentation, h-flip, translation, shadow, brightness) that drives the simulator autonomously over Flask-SocketIO. Group project.

  • tensorflow
  • keras
  • opencv
  • flask_socketio
  • udacity_sim
// classical

classical_ml_suite

Polynomial regression with the closed-form normal equation, L2-regularized ridge regression via PyTorch SGD, k-NN on Iris with decision-boundary plots, multinomial Naive Bayes with Laplace smoothing on Kaggle disaster tweets, and a pure-NumPy Word2Vec CBOW with negative sampling — trained on the text of White Fang.

  • numpy
  • scikit_learn
  • pytorch
  • kaggle
// vision

scene_classification__cnn_vs_alexnet

Custom MATLAB CNN (~1.6M params) trained from scratch versus AlexNet transfer learning on the Intel Image Classification dataset (six classes — buildings, forest, glacier, mountain, sea, street). Compares the trade-off between architectural design and pre-trained representation.

  • matlab
  • dl_toolbox
  • alexnet
  • transfer
// optimization

genetic_algorithm__levi_n13

A binary-encoded genetic algorithm minimizing the Lévi N.13 benchmark — a 2D non-convex function with a single global minimum at f(1,1) = 0 hidden among many local minima in [−10, 10]². Inversion mutation, two-point crossover, generational replacement, convergence plots across runs.

  • numpy
  • matplotlib
  • genetic_algo
LOG_005

MISC_

// Smaller side projects that don't fit a single category — each one a chance to learn something specific about systems, mobile, graphics, or the tooling around an idea.

// android

nfcard__offline_nfc_business_card

Android app that turns the phone into a tappable business card. NFC Host-Card Emulation (Forum Type 4 Tag, AID D2760000850101) for peer-to-peer; Reader Mode for receiving. vCard 2.1 encoding for max compatibility, Google Nearby Connections handover for transfers above the NFC payload limit. Offline-first on Jetpack Compose, Hilt, Room.

  • kotlin
  • compose
  • material_3
  • nfc_hce
  • hilt
  • room
// systems

barec__compiler_+_stack_vm

Complete C++17 toolchain for "BareC", a small statically-typed C-like language. Hand-rolled preprocessor → lexer with line/column tracking → recursive-descent parser → two-pass semantic analyzer (strict typing, scope resolution, pointer arithmetic) → single-pass codegen with label table → stack-machine VM with std::variant operands and heap-vector arrays. Single g++ *.cxx build.

  • cpp_17
  • recursive_descent
  • stack_vm
  • std_variant
// graphics

matlab_image_processing__from_scratch

Four DSP and computer-vision implementations written without a single helper from imfilter, conv2, padarray, imdilate: Burt-Adelson Laplacian-pyramid blending in HSI space, a 1-level Haar wavelet DWT/IDWT with perfect reconstruction (~280 dB PSNR), Oliva-Torralba hybrid images, and Gaussian / maximum spatial filters with explicit kernel rotation.

  • matlab
  • octave
  • wavelets
  • pyramids
// utils

smaller_utilities

A few tighter projects from across the years: an Android Pomodoro study timer, a Kotlin calculator, an "age in minutes" curiosity, a C++ exam-prep collection of data-structures and algorithms problems, and a small Windows shutdown scheduler. Useful for what they taught more than what they did.

  • kotlin
  • java
  • cpp
  • android
LOG_006

TECH_STACK_

// LANGUAGES
  • java
  • kotlin
  • python
  • typescript
  • javascript
  • c
  • cpp
  • sql
  • matlab
  • octave
  • html
  • css
  • bash
  • latex
// BACKEND_+_WEB
  • spring_boot
  • spring_security
  • spring_data_jpa
  • hibernate
  • jwt
  • junit_5
  • mockito
  • assertj
  • jacoco
  • swagger
  • pdfbox
  • lombok
  • maven
  • gradle
  • fastapi
  • flask
  • rest_apis
  • microservices
  • sse
// FRONTEND_+_MOBILE
  • react_19
  • vite
  • tailwind
  • shadcn_ui
  • radix
  • react_hook_form
  • zod
  • axios
  • recharts
  • vitest
  • cypress
  • compose
  • material_3
  • hilt
  • retrofit
  • okhttp
  • moshi
  • room
  • datastore
  • coil
  • coroutines
  • javafx
  • swing
// ML_+_AI
  • pytorch
  • torchvision
  • torchaudio
  • tensorflow
  • keras
  • scikit_learn
  • numpy
  • pandas
  • matplotlib
  • seaborn
  • opencv
  • huggingface
  • wav2vec2
  • sentence_transformers
  • chromadb
  • langchain
  • ollama
  • gemma
  • lm_studio
  • react_pattern
  • rag
  • matlab_dl
// DATA
  • postgresql
  • mysql
  • oracle_sql
  • sqlite
  • h2
  • chromadb
// DEVOPS
  • git
  • github
  • docker
  • compose
  • nginx
  • nvidia_toolkit
  • cuda
  • wsl
  • antlr4
  • powerdesigner
  • android_studio
  • github_pages
LOG_007

META_

// LANGUAGES

SR // native

EN // excellent proficiency

// CERTS

Karate Black Belt [1st Dan Shodan]

Elementary Music School [Piano]

B-category driver's license

// OFF_HOURS

Long-distance reading, longer-distance hiking, trying not to break the kitchen.