Karlis
Purens
Developer Portfolio
Server Mesh
Management Platform
Aug 2025 - May 2026
Distributed server management platform.
All-in-one management suite for maintenance & management of servers from various independent service providers.
The usual (industry standard) way of application / service deployment involves choosing a specific service platform
(Azure / Amazon / Google).
However, this leads to extremely dangerous dependency:
you are tied to that specific platform & software tools.
Server Mesh aims to resolve this issue by allowing users to combine servers from various internet service providers.
Allows creating a group (abstract grouping of your servers)
and adding servers/boxes with specific configuration.
Manager software installs/runs python service on target machine - combining management with monitoring. As well as dedicated linux service & user account for java application.
Trustless deployment of java application - deploy only compiled java archive without exposing source code.
Automated / seamless SSL certificate configuration for an entire group of servers. (group can have domain name)
Minimalistic design - barebones shell + python scripts.
(no docker/kubernetes/git required).
GPT Helper
Automated AI Tool
Aug 2023 - Nov 2023
Creating automated GPT helper tool.
Tool is designed to significantly improve daily workflow.
Completes user goals by clarifying and splitting them into smaller tasks.
Main advantage is the ability to modify file system using function calls. Regular ChatGPT can not modify user file-system resulting in large overhead.
Can easily select desired context using web interface. Eliminates the need for copy-pasting code to/from ChatGPT.
Core functionality implemented using Java Spring + Gradle.
Front-end displays relevant information using NodeJS + React.
Using non-blocking reactive Spring WebClient to access GPT API.
Tool is not limited to single scope or programming language. This allows performing tasks in any coding language or framework.
Cuda Secp
Cuda GPU Software
Jul 2022 - Oct 2022
Cuda Secp256k1 Wallet / Account Recovery Tool.
Performs Secp256k1 Point Multiplication directly on GPU.
Can be used for efficient brain-wallet or mnemonic-phrase recovery.
Multi-threaded client-side written in C++.
Main thread manages client-server communication.
GPU thread executes several commands on each cuda core:
Clients can be quickly deployed as Docker images.
Java Spring server synchronizes multiple clients.
Multiple endpoints are exposed as REST services.
Authorization endpoint manages client credentials / tokens.
File endpoint allows downloading binary target hash files.
Sync endpoint synchronizes next and done words.
PostgreSQL database + Spring JPA manages data storage.
Housify
Search Engine
Jan 2021 – Dec 2021
Real-estate search engine.
Main goal of the system is to collect real-estate posters from multiple websites and display them in simple unified format.
System uses microservice architecture. Each microservice runs custom Java Spring service inside a Docker container and communicates with other containers / services.
Poster data is stored in PostgreSQL database and managed by the Poster service.
Poster images are handled by Image service, which can be directly accessed by client-side apps to reduce load on API-Gateway.
Web Crawler process periodically crawls all websites, uses JSoup to read / parse the HTML content, finds new housing posters and sends them to Poster service.
Advanced features include viewing poster historic versions,
loading nearby posters and calculating statistics for specific address.
PDF Gen
Java Spring Service
Oct 2020 – Dec 2020
Developing PDF Generator service.
Service designed to allow fast and reliable PDF generation.
Can be easily adapted for any type of PDF file:
(Contracts, Invoices, Receipts, Manifests, etc)
PDF request is sent by front-end and then validated.
Necessary information is fetched from the database.
HTML template is loaded and used to generate new PDF file.
Service uses Java Spring Boot as backend framework.
MongoDB is currently used as persistance layer.
Service includes caching to avoid generating identical PDFs.
If PDF file for specific request already exists then it is returned from cache.
Contact