Native libraries, E2EE and WebAssembly
Developing C++ libraries for end-to-end encrypted communication, porting native code to WebAssembly, and integrating it with web, mobile and desktop applications.
Patryk Kisielewski
I design and develop software with a focus on C++ libraries, end-to-end encryption, cross-platform integrations, secure code execution and automated evaluation systems.
Toruń, Poland

Engineering focus
I combine low-level programming with system design for software that must work across languages, environments and deployment models.
Developing C++ libraries for end-to-end encrypted communication, porting native code to WebAssembly, and integrating it with web, mobile and desktop applications.
Systems that run untrusted code, process isolation, resource limits, automated solution evaluation, and online judge architecture.
Designing clear system responsibilities, leading technical projects, working with students, and sharing knowledge through classes and talks.
Featured work
Professional, academic and team projects that represent different areas of my engineering work.
Professional project · Simplito
A developer platform for building applications with end-to-end encrypted communication, data storage and content sharing across web, mobile, desktop and XR environments.
Professional project · Simplito · CORTEX² Open Call winner
Virtual Encrypted Meetings — a project enhancing the privacy and security of communication in VR environments through comprehensive end-to-end message encryption and data protection.
VEM was selected among the 10 winning projects in the CORTEX² Open Call #2. Simplito was the project’s lead organisation and the only Polish finalist in this call.
Open source · academic and educational project
An extensible platform for programming contests, courses and laboratories, built to run and automatically evaluate submitted solutions.
Team project · student project
A configurable tool for organising map- and location-based events, including urban games, field events and orienteering.
Recognised in the NCU Faculty of Mathematics and Computer Science competition in the business and social potential categories.
Professional experience
From low-level code and build processes to secure cross-platform APIs, I work at the boundaries between languages, systems and execution models.
I develop native libraries from build configuration to stable APIs and application integrations. I connect C++ with WebAssembly and web, mobile and desktop environments while working with concurrency, communication protocols and cryptographic mechanisms used in E2EE solutions.
SYSTEM MAP
The areas I bring together when designing, developing and integrating libraries.
Configuring build processes, working with compilers and toolchains, cross-compilation, and preparing code for different systems and architectures.
Static and dynamic libraries, linking, public API design, and maintaining source and binary compatibility.
Native threads, pthreads, synchronisation and safe shared-state handling, complemented by Web Workers in browser environments.
Integration layers and bindings that expose C++ code to web, mobile and desktop applications, including Emscripten ports to WebAssembly.
Symmetric and asymmetric encryption, block cipher modes, initialisation vectors, and handling keys, key pairs and shared secrets.
Communication design, data serialisation and JSON-RPC, boundary validation, and deliberate use of third-party libraries in security-sensitive code.
Speaking & teaching
Practical engineering knowledge shared through a technical talk and long-term project work with students.
Featured talk
A talk delivered as a Simplito representative, focused on practical challenges in using a native C++ library from applications written in different languages and running across multiple platforms.
Talk page(opens in a new tab)Teaching
Long-term project classes in which students developed an automated programming-task evaluation system, working in weekly sprints and combining requirements analysis, design, implementation, testing, automation and technical documentation.
| Course | Period |
|---|---|
| AlgoJudge | academic year 2023/2024 |
| AlgoJudge2 | academic year 2024/2025 |
The classes were made possible by the NCU “Ścieżki rozszerzone” grant under “The Excellence Initiative - Research University” (IDUB) programme.
AlgoJudge(opens in a new tab) and AlgoJudge2(opens in a new tab) courses in the NCU catalogue
About
I am a Software Engineer at Simplito with a Master’s degree in Computer Science from Nicolaus Copernicus University in Toruń. In my professional work, I have developed C++ libraries for end-to-end encrypted communication, ported native code to WebAssembly with Emscripten, and built modules that support WebRTC and integrations that use it.
I have also long been interested in systems that automatically run and evaluate code. This area connects my participation in programming contests, degree projects, development of AlgoJudge and the project classes I have taught.
Beyond software development, I have been involved in academia and the local computing community: teaching project classes, preparing technical talks, leading the Noxmap team and serving as chair of The Scientific Society of Computer Science Students at NCU.
I developed my skills in algorithm design and analysis, as well as in solving complex programming problems, in part through participation in the Ministry of Science and Higher Education grant programmes Najlepsi z najlepszych! 3.0(opens in a new tab) and Najlepsi z najlepszych! 4.0(opens in a new tab) (“The Best of the Best”), which supported outstanding computer science students at the NCU Faculty of Mathematics and Computer Science competing in international programming contests.
Public profiles
Explore my projects, code and further information about my experience on GitHub and LinkedIn.