Piotr Poznanski, Developer in Kraków, Poland
Piotr is available for hire
Hire Piotr

Piotr Poznanski

Verified Expert  in Engineering

Solutions Architect and Developer

Location
Kraków, Poland
Toptal Member Since
August 2, 2021

Piotr is a software developer, architect, and technical lead with 23+ years of experience working with CERN, Motorola Solutions, universities, and more. He has led projects, served as a scrum master, and developed and delivered complex web and mobile solutions, including business and technical requirements, architecture, 3rd-party API integrations, data acquisition, and processing for BI. Piotr co-developed the pan configuration language and has a PhD in computer science.

Portfolio

Resole (Self-employed)
Dart, Perl, C++, SQL, Web Scraping, Flutter, Technical Leadership...
metaENGINE Pte Ltd.
Architecture, AWS Cloud Architecture, Blockchain, Authentication, Authorization...
Uplink Network Foundation (Toptal Project)
Blockchain, Solidity, Ethereum Smart Contracts, Networking, WiFi Integration...

Experience

Availability

Part-time

Preferred Environment

MacOS, Linux, Visual Studio Code (VS Code), Android Studio, CLion

The most amazing...

...tool I've developed was the compiler of the pan configuration language, which I co-designed.

Work Experience

Owner and CTO

2018 - PRESENT
Resole (Self-employed)
  • Developed a Flutter-based end-user mobile application for a parking entrance management system.
  • Led a remote development team and created the system architecture for a distributed IoT product for managing parking spaces. The architecture included system software and hardware modules, data models, and protocols.
  • Built a software toolkit for generating an object-oriented abstraction layer for embedded RTOS programming.
  • Developed data acquisition and processing software for the Puma SE business intelligence unit.
Technologies: Dart, Perl, C++, SQL, Web Scraping, Flutter, Technical Leadership, Team Leadership, Architecture, Mobile App Development, Distributed Systems, Internet of Things (IoT), Data Modeling, Object-oriented Programming (OOP), Real-time Operating System (RTOS), Business Intelligence (BI), Data Management, Mobile Applications, CTO, Product Roadmaps, Estimations, IT Project Management, Software Development, OOP Designs, Team Management, Agile, UML, Analysis, Startups, APIs, Work Breakdown Structure, Web & Mobile Applications, Communication Protocols, Fault Tolerance, Technical Architecture, Technical Hiring, Interviews, Roadmaps, Solution Architecture, Integration, REST, Systems, Design Specifications, Data Integration, Databases, Research, R&D, Parsers, CLI Parser, REST APIs, Technical Documentation, Diagrams, Engineering, Agile Project Management, Technical Project Management, Management

Software Architect | Engineering Lead

2022 - 2023
metaENGINE Pte Ltd.
  • Created development plans and roadmaps for product implementation, including work breakdown structures and effort estimations. Provided guidelines for design and engineering team synchronization.
  • Drove and provided feedback for product requirements formulation. Created and drove reviews of lo-fi wireframes and use-case diagrams for the first version of the MVP.
  • Built a full-stack MVP team of six senior developers. Created a hiring plan. Led and participated in technical panels.
  • Created the platform, product, and integration scalable architecture. The platform was deployed on AWS, heavily relying on AWS-provided services (RDS, Amazon Cognito, and ECS). It integrated with game engines, payment providers, and blockchains.
  • Led implementation technologies and framework decisions. Back-end services were implemented in TypeScript and NestJS. The front end was implemented in TypeScript and Next.js.
  • Architected and implemented a prototype (TypeScript/Node.js/React) of RBAC/ACL authorization and authentication core service. The service was a foundation for platform-wide user account management, shared by game engines and platform products.
Technologies: Architecture, AWS Cloud Architecture, Blockchain, Authentication, Authorization, Integration, Technical Hiring, Technical Leadership, Team Mentoring, Team Building, Technical Requirements, Full-stack, Node.js, NestJS, React, Next.js, TypeORM, TypeScript, Engineering Management, Scalability, Web Security, Amazon Web Services (AWS), Docker, OAuth 2, Identity & Access Management (IAM), Role-based Access Control (RBAC), ACL

Technical Analyst, Solution Architect, Tech Lead

2022 - 2022
Uplink Network Foundation (Toptal Project)
  • Created the architecture of a solution for cryptocurrency payments for using public wifi hotspots. The system comprises router extensions, Ethereum smart contracts, and a mobile application.
  • Prototyped an Ethereum smart contract in Solidity for payments in a prepaid packages model with refunds on unconsumed data.
  • Created and prototyped software architecture for wifi routers. The solution is based on OpenWrt, using integrations with a captive portal and filtering and quota management.
Technologies: Blockchain, Solidity, Ethereum Smart Contracts, Networking, WiFi Integration, Linux, UML, System Architecture, Systems Analysis, Costing, Project Estimation, OpenWRT

Solution Architect, Technical Lead, CTO

2021 - 2022
Fintech Company (Toptal Client)
  • Architected an MVP for a startup banking solution. The architecture consisted of a Kotlin and Spring Boot back end, a Flutter front end, RESTful APIs, integrations with third-party core banking, and KYC and AML solutions.
  • Gathered and analyzed requirements while working closely with the client and product owner.
  • Evaluated third-party solution providers and oversaw the integration process.
  • Led an entirely distributed team of 3-7 developers and collaborated with the product owner to provide a work breakdown and estimates.
Technologies: Kotlin, Spring Boot, Dart, Flutter, REST APIs, Minimum Viable Product (MVP), Architecture, Startups, API Integration, Know Your Customer (KYC), Anti-money Laundering (AML), AML, Business Requirements, Technical Requirements, Team Leadership, Team Management, Work Breakdown Structure, Project Estimation, CTO, Estimations, Software Architecture, Integration, Interviews, Mentorship, Fintech, Software Development, Agile, UML, Data Modeling, Technical Architecture, Interviewing, Solution Architecture, REST, Systems, Design Specifications, Databases, Technical Documentation, REST API Architecture, Diagrams, UML Diagrams, Team Mentoring, Security

Adjunct Professor

2005 - 2022
Cracow University of Technology
  • Created and taught courses on software engineering, programming paradigms, programming languages, and object-oriented technologies.
  • Mentored students and supervised dozens of graduate theses at the bachelor and master of science levels.
  • Authored and co-authored 30+ scientific publications and successful scientific grant proposals.
  • Participated in scientific R&D projects, including software for particle tracking in high-energy physics experiments, tracking-based software for generating physical motion graphics, and flood simulation systems.
  • Created the technical vision, co-authored a successful grant application, and directed the technical aspects of an interdisciplinary project for creating the first Polish system for quantitative studies on democratic roll-call political systems.
Technologies: Lecturing, Workshops, Team Leadership, Team Management, Scientific Computing, Technical Leadership, Motion Graphics, Physics, Tutoring, Advisory, Source Code Review, Reviews, Design Reviews, Mentorship, Grant Proposals, Project Papers for Proposed Financing, Articles, Article Submission, CTO, Interdisciplinary Collaboration, UML, Training, Design Specifications, Research, R&D, Technical Documentation

Technical Director

2017 - 2017
Institute of Nuclear Physics Henryka Niewodniczański of the Polish Academy of Sciences
  • Contributed to and supported the scientific project roadmap by developing and managing the technical agenda.
  • Managed a team of 5-7 software and hardware developers in the CREDO project.
  • Created high-level architecture for data processing in the CREDO project.
  • Architected and co-developed a system and mobile application for detecting cosmic particles using phone cameras.
Technologies: Agile, Kotlin, Android SDK, Android NDK, Leadership, Technical Leadership, Architecture, Analysis, Team Management, Data Architecture, Mobile Applications, Web & Mobile Applications, Mobile App Development, CTO, Advisory, Technical Architecture, Technical Hiring, Roadmaps, Project Estimation, Product Roadmaps, Android, Large Scale Distributed Systems, Software Development, System Architecture, Physics, Work Breakdown Structure, IT Project Management, Solution Architecture, Mentorship, Grant Proposals, REST, Systems, Databases, Research

Senior Software Developer, Technical Lead, Scrum Master

2005 - 2011
Motorola Solutions
  • Built and led Agile teams of 7-14 developers in developing software for base radios for Motorola ASTRO trunked systems while serving as a technical leader and scrum master.
  • Created the architecture and developed software components in C++ for application and service layers of Motorola base radios.
  • Developed new methods for capturing and analyzing technical requirements.
  • Took part in technical planning and project management for two major releases of Motorola ASTRO Base Radio software with release budgets estimated at $10-$20 million.
Technologies: Agile, Scrum Master, Scrum, OOP Designs, Object-oriented Programming (OOP), Design Patterns, Technical Requirements, Software System Architecture Development, IBM Rational Rose, IBM Rational ClearCase, DOORS, VersionOne, UML, C++98, Technical Leadership, Architecture, Analysis, Agile Software Development, C++, Software Architecture, Planning, Technical Project Management, Estimations, Project Estimation, Fault Tolerance, Technical Hiring, Interviewing, Interviews, Leadership, Software Design, Roadmaps, Product Roadmaps, Source Code Review, Code Review, Design Reviews, Software Development, System Architecture, Requirements, Work Breakdown Structure, Communication Protocols, Technical Architecture, Mentorship, Systems, Design Specifications, Databases, Parsers, Technical Documentation, Diagrams, UML Diagrams, IT Project Management, Agile Project Management, Team Mentoring

Staff Software Developer, Task Leader, Architect

2001 - 2004
CERN
  • Developed substantial parts of the configuration management system in the Quattor toolkit. The toolkit managed CERN computer center production clusters for 10+ years and is still used by some high-energy physics (HEP) institutes.
  • Co-created the pan configuration language and implemented the first version of its interpreting compiler in C++, Yacc, and Bison.
  • Created and conducted workshops on the pan language and cluster management.
  • Led 1-3 developers in the configuration management task of the European DataGrid project with a budget of over 70 million EUR.
  • Created and taught courses on the pan language and Quattor toolkit when taking part in international conferences and workshops.
Technologies: C++, C, Perl, GRID, Quattor, Java, Farm Computing, Linux, AIX, Yacc, Bison, Training, Workshops, Software Design, Roadmaps, Product Roadmaps, Solution Architecture, Large Scale Distributed Systems, Software Development, Object-oriented Programming (OOP), OOP Designs, Scientific Computing, Agile, Technical Requirements, UML, C++98, Requirements, Architecture, Analysis, Data Modeling, Data Management, Physics, APIs, Work Breakdown Structure, Fault Tolerance, Technical Architecture, Tutoring, Integration, Systems, Design Specifications, Databases, Research, R&D, Compilers, Compiler Design, Parsers, XML, XML Parsing

MVP of Core Banking Solution for Fintech (Toptal client)

An MVP of a banking system that provides services for business clients. The MVP implements payments and FX transactions and integrates banking ledgers, transaction rails, and KYC/AML solutions.

The front-end application uses an adaptive design, and the back end works in the cloud. The system technology stack is Flutter and Dart on the front end and Spring Boot and Kotlin on the back end.

My Role
• Worked closely with the project funders and provided technical advice.
• Led a team of 3-7 developers.
• Proposed the MVP solution architecture and the technical vision of the post-MVP product and defined the public API specifications.
• Owned the evaluation of the technology stack and third-party solution providers.
• Oversaw the selection of third-party service providers costing around 150,000 EUR per year.

MVP of an Entrance Management System

An MVP for a startup distributed IoT system that was cloud-managed with a mobile application and custom electronics. This Flutter-based mobile application allowed users to open parking and other gates and garages. It also featured history browsing and enabled clients to issue invitations between users and a push notification mechanism based on the Google Cloud Platform.

Serving as the product owner, technical lead, and solution architect, I defined the functionality, designed the system architecture and data model, and managed a team of two software developers and one hardware developer.

We implemented the server side with JavaScript and Node.js, ran custom electronics on RTOS, and built communication on top of REST and WebSockets. I also researched two novel approaches to contactless, out-of-band device communication, which we prototyped during the project.

Configuration Management System in the Quattor Toolkit

http://quattor.org
An R&D project executed within the European DataGrid (EDG) project that had a 70+ million EUR budget. This project focused on architecting and developing the Quattor toolkit, a system that manages Grid computing farms.

The system has a central server that manages and processes configuration information that's distributed to managed systems via a node-managed system. It uses a custom, in-house-developed language called pan and an own-developed interpreting compiler. I was the author of the first version. The compiler was written in C++ using Bison and Yacc tools, and other system components were implemented in Perl and Java.

I co-architected the configuration management system, co-authored the pan language, and implemented the first version of the compiler and the central configuration database of the system. As the leader of the EDG configuration management task, I took an active role in the architecture task force, the group that drove the overall project architecture. I also authored workshops on the pan language and Quattor toolkit, which I actively disseminated across Europe during project conferences and meetings.

Quattor has managed farms of 10 to 10,000 machines for commercial and research institutions, including CERN.

CREDO Detector Mobile App

http://credo.science
The CREDO project aims to build an extremely distributed cosmic ray detector to study the physics of high-energy cosmic particle showers and super showers. It assumes the use of heterogenic physical detectors, including mobile phones.

We implemented the mobile application for detecting particles in Kotlin with some C and C++ code embedded via JNI to optimize data processing. It captures video frames and performs image processing to detect traces of particles hitting the phone camera sensors. The application has 10,000+ installs on Google Play.

My Role
• Proposed the mobile application to the steering committee.
• Developed the first version of the mobile application for detecting cosmic particles.
• Defined the high-level architecture.
• Led scientific software and hardware developers.
• Served as the technical liaison to other projects and service providers.
• Supported the citizenship aspect of the CREDO project.
• Proposed a gamification strategy for the mobile application.
• Led the development of the project web portal.
• Co-authored a successful grant application that raised 50,000 EUR.

Data Acquisition and Processing Software for Puma SE

A system I architected and implemented for acquiring external data from web pages, databases, and text documents. The modular software uses web scraping and structured and unstructured text processing. I also conducted research, assisted in formulating user requirements, and managed one developer who wrote some of the plugins for the system.

The software uses different techniques and tools for data extraction and transformation. Intermediary forms are stored in relational databases, and the final form is fed into PUMA warehouse systems. The system and its plugins are written in Perl and JavaScript, and it uses automated translation services provided by Microsoft Azure. The data produced by the system is used to optimize company supply and production chains.

Object-oriented C++ Abstraction Layer Generator for RTOS

A toolkit aimed at facilitating the development of multitasking, object-oriented C++ code for RTOS. The toolkit introduces an abstraction layer that encapsulates inter-task communication using RTOS primitives. The abstraction layer uses real-time reactive design patterns.

I was the sole creator of the toolkit, from conception to implementation. It greatly simplifies software development for the platform by structuring business logic software, solving concurrency problems, and keeping it independent from underlying communication mechanics. The code generator is a central part of the toolkit. It generates communication-layer code based on C++ headers of business logic classes.

Interactive Wall | Computer Vision System

A research project on new methods for human to computer interaction. The system used an infrared camera to capture users' movements when interacting with computer-generated graphics. It acquired vision data using OpenCV-based software to determine a user's location and movements while interacting with animations generated by Box2D and its physics engine. I developed this system using C++ and OpenCV.

Motorola Astro 25 System Base Radio

Motorola ASTRO 25 is a mission-critical system that provides integrated voice and data network communications to certain agencies in the United States, such as law enforcement and firefighters.

I worked on new releases of the ASTRO 25 Base Radio, adding support for TDMA communication modes and creating and managing hundreds of technical requirements and architectural drafts. The specifications were used by two Scrum development teams, with around 15 developers, as input for the microarchitecture and implementation of RT C++ software.

My Role
• Served on the architecture task force as a team member.
• Developed downstream requirements using six-part template-based notation and UML architecture.
• Took part in failure mode and effects analysis (FMEA), formal project artifact reviews, backlog definition, and estimations.
• Established the first Scrum team in the base radio department and served as the scrum master.
• Enabled the further transition to Agile development by educating the new scrum master.
• Transitioned project activities from the US-based team by establishing technical liaisons and educating developers on aspects of the RT software architecture used in the system.

Languages

UML, Perl, C++98, C++, Dart, C, Kotlin, Java, SQL, Java 7, XML, Solidity, TypeScript

Paradigms

Object-oriented Programming (OOP), Agile, Design Patterns, REST, Scrum, Business Intelligence (BI), Agile Software Development, Compiler Design, REST API Architecture, Agile Project Management, Management, Role-based Access Control (RBAC)

Other

Software Development, System Architecture, OOP Designs, Lecturing, Team Leadership, Technical Requirements, Quattor, Requirements, Architecture, Analysis, Tutoring, UML Diagrams, Design Specifications, Large Scale Distributed Systems, Configuration Management, Grid Systems, Distributed Systems, Workshops, Team Management, Scientific Computing, Scrum Master, Software System Architecture Development, GRID, Farm Computing, Technical Leadership, Leadership, Data Management, Business Requirements, Project Estimation, Data Architecture, Software Architecture, Planning, IT Project Management, Technical Project Management, Training, CTO, Advisory, Technical Architecture, Software Design, Solution Architecture, Mentorship, Grant Proposals, Team Mentoring, Research, R&D, Natural Language Processing (NLP), Yacc, Bison, Web Scraping, Mobile App Development, Internet of Things (IoT), Data Modeling, IoT Protocols, Real-time Operating System (RTOS), Motion Graphics, Physics, Minimum Viable Product (MVP), Startups, API Integration, Know Your Customer (KYC), Anti-money Laundering (AML), AML, APIs, Work Breakdown Structure, Mobile Applications, Web & Mobile Applications, Mobile Apps, Communication Protocols, Java Native Interface (JNI), Text Processing, Estimations, Fault Tolerance, Technical Hiring, Interviewing, Interviews, Roadmaps, Product Roadmaps, Source Code Review, Code Review, Reviews, Design Reviews, Integration, Project Papers for Proposed Financing, Articles, Article Submission, Interdisciplinary Collaboration, Fintech, Prototyping, Systems, Remote Team Leadership, Distributed Caches, Ethereum Smart Contracts, Networking, WiFi Integration, Systems Analysis, Costing, Compilers, Parsers, Technical Documentation, Diagrams, Engineering, IoT Security, GPT, Generative Pre-trained Transformers (GPT), AWS Cloud Architecture, Authentication, Authorization, Team Building, Full-stack, TypeORM, Engineering Management, Scalability, Web Security, Security, Identity & Access Management (IAM)

Frameworks

Flutter, Android SDK, Box2D, Realtime, Spring Boot, NestJS, Next.js, OAuth 2

Platforms

MacOS, Linux, Visual Studio Code (VS Code), AIX, Google Cloud Platform (GCP), Android, Blockchain, OpenWRT, Amazon Web Services (AWS), Docker

Libraries/APIs

OpenCV, CLI Parser, REST APIs, Node.js, React

Tools

Android Studio, CLion, Android NDK, IBM Rational Rose, IBM Rational ClearCase, DOORS, VersionOne, ACL

Storage

Data Integration, Relational Databases, Databases, XML Parsing

2004 - 2005

PhD in Computer Science

AGH University of Science and Technology - Kraków, Poland

1995 - 2000

Master's Degree in Computer Science

AGH University of Science and Technology - Kraków, Poland

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring