Przemek Urbanski, Software Developer in Szczecin, Poland
Przemek Urbanski

Software Developer in Szczecin, Poland

Member since January 19, 2020
Przemek is an exceptionally skilled engineer with a master's degree in computer science. With over 25 years of hands-on experience, Przemek is equipped with a wide range of technical skills and technologies. He has built and led successful projects for complex multi-tier systems and early-stage startups. Przemek worked for the public sector, finances, aerospace agencies, media, ISP, and car manufacturers. His most vital saying is that he is not running away from problems but solving them.
Przemek is now available for hire

Portfolio

Experience

Location

Szczecin, Poland

Availability

Part-time

Preferred Environment

Linux, C++, Python, Django, Angular, TypeScript

The most amazing...

...thing I've experienced is winning an internal competition for the most performant prototype of a trade exchange system.

Employment

  • Senior Full-stack Developer

    2022 - PRESENT
    PureCode.IT
    • Developed a front end and back end to allow customers to track their wealth and calculate the rate of return on their savings and assets.
    • Researched, designed, and then interconnected back end to remote financial API, which allows gathering historical data of financial assets.
    • Analyzed and implemented various financial calculations which allow calculating the rate of return and other markers on user savings.
    Technologies: Angular, TypeScript, Amazon Web Services (AWS), Authentication, GraphQL, REST, Django, Python
  • Technical Leader

    2020 - PRESENT
    PureCode.IT
    • Created a fully functional aircraft cockpit in-flight instrument. The instrument has onboard: pressure sensors, an accelerometer, a gyroscope, a magnetometer, GPS, LoRa, BT, wifi, I2S, and LCD.
    • Designed, soldered, tested, and manufactured multiple printed circuit board (PCB) revisions.
    • Designed and implemented multithreaded, embedded firmware for ESP32 based on FreeRTOS.
    • Developed a Java/Kotlin Android flight navigation application to interface with plane instruments via Bluetooth.
    • Designed automated over-the-air remote firmware updates.
    • Implemented a REST API on the firmware side to control devices via wifi.
    • Coordinated integration of software used for data processing for websites like Flightradar.
    • Designed and developed sensor data gathering and processing, including pressure sensors, an accelerometer, a magnetometer, a gyroscope, GPS, and LoRa.
    • Coordinated hardware box design and manufacturing.
    • Equipped it with a soldering station, hot air station, microscope, soldering reflow oven, 3D printers, and many others.
    Technologies: C, C++, Embedded C, Embedded C++, LoRa, GPS, Bluetooth, ESP32, FreeRTOS, Python, Firmware, Sensor Data, KiCad, HTTP, REST, Accelerometers, I2C, Soldering, Embedded Software, Firmware over the Air (FOTA), Raspberry Pi, OOP Designs, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, Agile Software Development, IP Networks, Device Drivers, Amazon Web Services (AWS), Embedded Systems, Low-level Programming, Android, Embedded Development, Django, Architecture, Hardware, Arduino IDE, Team Leadership, REST APIs, Leadership, Full-stack, Node.js, GraphQL, React, DevOps, Circuit Design, Electrical Engineering, APIs, Mobile, PCB Layout, PCB Design, PCB, Java, PlatformIO, C++17, Robotics, Embedded Hardware, Kotlin, AWS Lambda
  • Senior Software Engineer

    2020 - 2021
    Toyota Research Institute – Advanced Development
    • Designed and developed an automated ETL pipeline to process car road map data.
    • Designed and implemented algorithms for analysis of car road map data, such as lane counts and detection of lane joints/branches and tunnels.
    • Created a Java/Kotlin-based REST API for AWS Lambda execution with automatic Terraform-based deployment.
    • Set up and administered a PostgreSQL database with PostGIS extensions.
    • Introduced significant optimization of database queries and code execution to meet tight REST API timeout limits.
    • Implemented a QGIS plugin to manually test the results of car road map algorithms and the correctness of ETL processing.
    Technologies: Python, C++, Data Engineering, Scrum, Docker, Data Pipelines, Amazon Web Services (AWS), Computer Vision, Image Processing, Terraform, PostgreSQL, REST APIs, ETL, QGIS, C, OOP Designs, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, Back-end Development, MySQL, SQLite, Agile Software Development, IP Networks, Java, Android, Architecture, Leadership, DevOps, APIs, PostGIS, GIS, Mobile, C++17, Kotlin, AWS Lambda, Technical Consulting
  • Senior Full-stack Developer

    2020 - 2020
    Toyota
    • Researched and tested many e-learning solutions in order to find a system that could be adjusted to the client's needs.
    • Deployed, customized, and further developed a web-based e-learning platform.
    • Deployed and administrated an online video streaming solution to allow the company employees to participate in remote classes and meetings during lockdown due to the pandemic.
    • Created an AWS-based infrastructure to host all systems and databases needed for the e-learning and video streaming platform.
    • Supervised and improved security on Linux-based servers.
    • Integrated the web e-learning system with a Google authentication API.
    • Wrote extensive documentation for deployed systems administrators and future maintainers.
    Technologies: Amazon Web Services (AWS), CSS, HTML, Bash, Git, TCP/IP, Networking, VoIP, PostgreSQL, Google API, Linux, JavaScript, PHP, Python, Software Engineering, Linux Administration, Linux Server Administration, Back-end Development, Web Development, MySQL, Agile Software Development, Terraform, Django, PostGIS, REST APIs, Full-stack, Node.js, GraphQL, React, DevOps, APIs, GIS, QGIS, Spring Boot, Technical Consulting
  • Python Developer

    2020 - 2020
    Acer
    • Designed and implemented a highly configurable and extensible Python application which maps data coming from a database, Excel spreadsheet, and INI files into a preset XML template.
    • Developed many unit tests and system tests—code coverage around 90%.
    • Created a Linux-based Docker container with all application software and dependencies.
    • Wrote basic shell scripts to simplify application usage.
    • Wrote extensive documentation and prepared many examples for future users and developers.
    Technologies: Git, Bash, Linux, Oracle, PostgreSQL, ODBC, SQL, Docker, Python, Software Engineering, MySQL, SQLite, Agile Software Development, Amazon Web Services (AWS), Java, Architecture, Unit Testing, DevOps, Technical Consulting
  • Senior Software Developer

    2018 - 2019
    Bank of America
    • Upgraded the complex equity trades valuation system to use the latest derivatives analytics library.
    • Implemented software for the valuation and pricing of new types of equity trades.
    • Developed Python scripts to administrate, diagnose, and troubleshoot the trades risk assessment platform.
    • Debugged and fixed bugs exposed in equities and data reference systems.
    • Mentored and supervised less experienced team members in Java and Python development and Linux engineering.
    • Introduced and deployed new test and mocking frameworks for C++ and Java system components.
    • Migrated equities and data reference systems tools and components from Python 2 to Python 3.
    Technologies: Makefile, Git, Oracle, SQL, Bash, Linux, Google Test, Boost, C++, Mockito, Java, Python, C, OOP Designs, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, Back-end Development, MySQL, PostgreSQL, Agile Software Development, Unit Testing, Leadership, DevOps, APIs, Microsoft Excel, C++17, Spring Boot, Technical Consulting
  • Senior Software Developer

    2016 - 2017
    Bloomberg
    • Implemented lock-free, multithreaded real-time processing of exchange data.
    • Redesigned the C++ library used for redundancy based on the master-slave approach.
    • Ported live services implemented in C++98 on AIX/Solaris to C++11 on Linux. Cleaned up and refactored code according to modern code practices.
    • Established and configured (routing and permissions) a new Linux cluster. Deployed ported services onto the new cluster and gradually migrated traffic. Eventually decommissioned all AIX/Solaris-based services.
    • Developed various unit and system tests to ensure correct service migration to Linux.
    • Incorporated static code analysis into the build system.
    Technologies: Makefile, Git, Bash, Linux, SQL, JavaScript, Python, Boost, Google, C++, C, OOP Designs, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, Back-end Development, MySQL, PostgreSQL, SQLite, Agile Software Development, IP Networks, Architecture, REST APIs, Unit Testing, CppUnit, Node.js, GraphQL, React, DevOps, APIs, Microsoft Excel, C++17, Networking, Technical Consulting
  • Senior Software Developer

    2015 - 2016
    Telespazio Vega
    • Implemented the core and the user front end of the satellite launching system.
    • Designed and implemented a Django-based configuration and provision tool for the satellite launching system.
    • Created the boilerplate code for applications, servers, and front ends, which was used by all the remaining developers.
    • Mentored and supervised the less experienced team members in C++ and JavaScript development, and Linux engineering.
    • Created the specification and implemented the security guidelines for system provision, deployment, upgrades, and day to day operations.
    • Advised and helped to implement network security policies to allow remote developers to securely access the company code repository.
    • Created the automated build system with unit tests and static code analysis support.
    Technologies: Git, Bash, Jenkins, Linux, SQL, CSS, HTML, jQuery, JavaScript, Django, Python, C++, C, OOP Designs, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, Back-end Development, Web Development, PostgreSQL, SQLite, Agile Software Development, Firmware, IP Networks, Embedded C, Embedded Systems, Low-level Programming, Embedded Development, Architecture, Qt, Raspberry Pi, Hardware, REST APIs, Unit Testing, Amazon Web Services (AWS), Leadership, Full-stack, Node.js, GraphQL, React, DevOps, Embedded Software, Circuit Design, Electrical Engineering, APIs, Technical Consulting, Networking
  • Software and Web Developer

    2011 - 2014
    Freelance
    • Designed and implemented a logic puzzle mobile game. The game was described in "The Sun" UK newspaper and it was available on iOS, Android, and BlackBerry.
    • Implemented Android applications based on customers' specifications (Healthy Diet app and Mindfulness Community app).
    • Migrated an existing Linux based Saas to a bandwidth balanced, high availability AWS cluster.
    • Reverse engineered and recompiled an iOS toolchain to allow iOS apps development on Windows.
    • Using WebRTC developed a website for video conferencing between remote office locations.
    • Developed a web front end and back end to track city hall public expenses.
    • Built a web front end and back end to track promises given by local elections candidates.
    Technologies: Linux, Android, iOS, Objective-C, C++, CSS, HTML, Angular, jQuery, JavaScript, Java, Django, Python, Software Engineering, Linux Administration, Linux Server Administration, Back-end Development, Web Development, MySQL, PostgreSQL, SQLite, Agile Software Development, PHP, Architecture, Team Leadership, REST APIs, Amazon Web Services (AWS), Full-stack, Node.js, React, Mobile, Spring Boot, Kotlin
  • Java Application Architect

    2009 - 2010
    Freelance
    • Designed and implemented a Java web-based application for custom photography processing.
    • Designed and implemented a Java back end for customers' orders processing.
    • Set up a Linux based infrastructure for application deployment.
    Technologies: CSS, HTML, jQuery, JavaScript, Django, Python, Java, Software Engineering, Back-end Development, Agile Software Development, PHP, Android, Architecture, Team Leadership, REST APIs, Leadership, Spring Boot
  • Linux C++ Developer

    2008 - 2009
    Deutsche Boerse
    • Designed and implemented the framework used for performance testing of messaging bus libraries supplied by third parties.
    • Won an internal competition for the most performant prototype of a stock exchange system.
    • Designed and implemented an asynchronous, multi-threaded, lock-free auditing server.
    • Created a tailored Linux distribution kickstart to unify and simplify developers' environment setup.
    Technologies: Git, Bash, Linux, Python, Boost, C++, Software Engineering, Algorithms, Linux Administration, Linux Server Administration, SQLite, Agile Software Development, Firmware, IP Networks, Device Drivers, Low-level Programming, Architecture, Qt, Unit Testing, CppUnit, DevOps, Technical Consulting, Networking
  • Unix Integration Engineer

    2008 - 2008
    Teligent
    • Improved tools used for configuration and provision of the telecommunication system.
    • Automated a build system and process of software versioning, packaging, and deployment.
    • Performed security checks on the company VoIP network infrastructure.
    Technologies: Git, RPM, XSLT, XSD, XML, Python, Bash, Linux, Software Engineering, Linux Administration, Linux Server Administration, Agile Software Development, Embedded Systems, Embedded C++, Qt, Raspberry Pi, CppUnit, Encryption, Technical Consulting
  • System Developer

    2006 - 2007
    Symbian (Cambridge, UK)
    • Designed and implemented a Bluetooth networking stack in line with new Bluetooth specifications.
    • Designed and implemented a mobile internet connection sharing over Bluetooth.
    • Troubleshot and fixed bugs in existing network protocol stacks (IP, InfraRed, Bluetooth, and SMS).
    • Developed a new functional test framework and an automated process for running tests on hardware.
    Technologies: Bash, Linux, Bluetooth, TCP/IP, Python, C++, Software Engineering, Algorithms, SQLite, Agile Software Development, Firmware, Device Drivers, Embedded C, Embedded Systems, Low-level Programming, Embedded C++, Embedded Development, Architecture, Hardware, Unit Testing, Embedded Software, Circuit Design, Electrical Engineering, APIs, PCB Layout, PCB Design, PCB, Embedded Hardware, Cryptography, Encryption
  • System Developer

    2005 - 2006
    Symbian (London, UK)
    • Developed cryptographic components for mobile operating systems, used to encrypt network data transmission (SSL and TLS protocols).
    • Developed an extensible authentication protocol (EAP) used on mobiles for wifi and PPP authentication.
    • Implemented a highly flexible and modular networking stack. It allowed creating TCP/IP connections over any transmission layer (ex. TCP/IP over Bluetooth, InfraRed, and GSM).
    Technologies: Bash, Linux, SSL, Transport Layer Security (TLS), TCP/IP, Python, C++, Software Engineering, Algorithms, SQLite, Agile Software Development, Firmware, Device Drivers, Embedded C, Embedded Systems, Bluetooth, Low-level Programming, Embedded C++, Embedded Development, Architecture, Hardware, Embedded Software, Circuit Design, Electrical Engineering, APIs, PCB Layout, PCB Design, PCB, Embedded Hardware, Cryptography, Encryption
  • Build and Linux Engineer

    2003 - 2005
    Quadriga Worldwide
    • Designed, implemented, and maintained a fully automated build system with a web interface. The system allowed developers to schedule a build, and have it deployed to an alpha site for further testing.
    • Developed the change software deployment process, from classic manual CD installation to provision hardware via network using the PXE boot technique.
    • Ported a satellite networking card device driver from Linux kernel 2.4.x to kernel 2.6.x.
    • Took part in the development of an MPG streaming application running on an embedded VxWorks system.
    • Introduced a version controlling system for software components packaging and deployment.
    Technologies: Java, C, SQL, CSS, HTML, jQuery, JavaScript, CVS, Bash, Python, Perl, Linux, Software Engineering, Linux Administration, Linux Server Administration, Web Development, MySQL, PostgreSQL, SQLite, Firmware, PHP, IP Networks, Embedded C, Embedded Systems, Smart TV, Bluetooth, Low-level Programming, Embedded C++, Embedded Development, Architecture, Hardware, Leadership, DevOps, Embedded Software, Circuit Design, Electrical Engineering, PCB Layout, PCB Design, PCB, Embedded Hardware, Networking
  • ISP Technical Manager

    2001 - 2002
    Telesonique SA
    • Increased performance of the telecommunication billing calculation process significantly: Cut down processing time from around three days to less than 20 hours.
    • Designed and implemented a website facing telecommunication billing systems for private and corporate customers.
    • Designed, deployed, and administrated the whole ISP infrastructure (dialup access points, authentication servers, web servers, mail servers, DNS servers, and DHCP servers).
    • Bridged data and voice networks via WAN interconnections using pioneer Linux solutions and Cisco hardware.
    Technologies: SQL, JavaScript, HTML, PHP, Perl, Bash, Cisco, TCP/IP, Linux, Software Engineering, Linux Administration, Linux Server Administration, Back-end Development, Web Development, MySQL, PostgreSQL, SQLite, IP Networks, Embedded C, Java, Embedded Systems, Bluetooth, Low-level Programming, Embedded C++, Embedded Development, Architecture, Hardware, Team Leadership, Leadership, Full-stack, Networking, Technical Consulting
  • Network Architect and Administrator

    1999 - 2001
    Zachodniopomorska Siec Internetowa
    • Designed and administrated a data transmission hybrid network, which allowed to connect private and corporate customers over pioneer radio links.
    • Administrated Solaris and Linux ISP servers and Cisco active network devices.
    • Created a dynamic website that allowed customers to configure and access their IP network-based services (customers email, website, FTP, and DNS aliases).
    Technologies: Java, PHP, Bash, Perl, TCP/IP, Cisco, Linux, Software Engineering, Linux Administration, Linux Server Administration, Back-end Development, Web Development, MySQL, PostgreSQL, Agile Software Development, IP Networks, Device Drivers, Embedded C, Bluetooth, Low-level Programming, Embedded C++, Embedded Development, Architecture, Hardware, Team Leadership, Leadership, Full-stack, Encryption, Networking
  • Unix Systems Administrator

    1998 - 2000
    Self-employed
    • Configured, deployed, and administrated a Linux hosting server.
    • Created a dynamic website to automate new customer registration and billing process.
    • Created a Java web application for a Denmark-based toy manufacturer.
    • Created static and dynamic websites based on customers' specifications.
    Technologies: C++, Java, CGI, HTML, PHP, Perl, Bash, Linux, Software Engineering, Linux Administration, Linux Server Administration, Back-end Development, Web Development, MySQL, PostgreSQL, Agile Software Development, IP Networks, Device Drivers, Embedded C, Embedded Development, Architecture, Hardware, Team Leadership, Full-stack, Networking

Experience

  • Portfolio Asset Manager

    I created an MVP website to manage users' asset portfolios. The website daily collects end-of-day prices of various assets like crypto, currencies, stock, etc. Based on automated collection, it calculates the current value of users' predefined asset portfolios.

  • Aircraft Cockpit in Flight Instrument
    https://www.facebook.com/groups/1286382805158836

    I designed and created a fully functional aircraft cockpit panel mount in flight instrument. This instrument is called a variometer and is mainly used in gliders. Besides variometer functionality, it also works as an aircraft real-time GPS tracker, artificial horizon, electronic compass, flight logger, and a few others. The variometer has already been installed and tested in ten gliders. Our gliders, when in flight, are visible on websites like FlightRadar.

  • Codility Golden Award for the Technetium 2019 Challenge
    https://app.codility.com/cert/view/certDVRPTJ-4K28DFCUS33Y6FX7/

    In my spare time, I try to improve and keep up to date my algorithmic and problem-solving skills. Therefore, whenever possible, I practice on Codility, HakerRank, LeetCode, etc. Technetium Codility challenge is from October 2019

  • Logical Puzzle Mobile Game - Piggy Biggy
    https://play.google.com/store/apps/details?id=com.blackted.piggybiggy&hl=en

    The game development lasted around two years (among other freelance assignments). The whole project is my idea. Except for music and graphics, which were done according to my guidance, I completed all work by myself: development, levels ideas, level editor, story, releases, website, Facebook integration, even promotional trailer. Even though it is 'just' a mobile game, this project shows my long-lasting persistence and dedication. While struggling with many problems on my own, without anyone's support - eventually the game made it to the UK "The Sun" newspaper. PiggyBiggy was available on iOS, Android, and BlackBerry, in six different languages: English, Chinese, German, Spanish, Italian, and French.

    Code is publicly available at: https://bitbucket.org/purbanski/piggybiggy/src/release-2.5/

  • Website to Analyze Glider (Plane) Flights

    Besides being an engineer, I'm a glider pilot. Currently, I'm developing for myself and my pilot friends, a website that will analyze our glider flights. The analysis covers pilot gliding skills and performance. This is a work in progress.

    Technologies used: Python, Django, ReactJS, and GraphQL.

    The code is available at https://github.com/pu-dev/igc-complete

  • FotoShot - Mobile Application
    https://www.youtube.com/watch?v=1T0_TYJ7WhA

    The application I managed to develop in my spare time. I needed to create for a customer another mobile application that required a 2D physic engine. I have used the FotoShot app to check capabilities of very popular at that time 2D physic library - Box2D.

Skills

  • Languages

    C, Python, C++, JavaScript, Java, Bash, Embedded C, PHP, Bash Script, C++17, CSS, HTML, SQL, Embedded C++, XML, XLST, Perl, Objective-C, QML, GraphQL, Kotlin, XSD, XSLT, TypeScript
  • Frameworks

    Django, Google Test, Cocos2d-x, Box2D, Django REST Framework, Flask, Qt, Mockito, AngularJS, Android SDK, JUnit, Realtime, Bootstrap, Qt 5, Cocos2d, Boost, Spring Boot, Angular
  • Libraries/APIs

    REST APIs, CppUnit, D3.js, React, Node.js, jQuery, Sockets, Google API, WebRTC, ODBC, Accelerometers, Amazon EC2 API
  • Tools

    Git, GDB, Makefile, GNU Debugger, KiCad, Apache, Jenkins, CVS, Bloomberg, GIS, PCB Layout, RPM, Maven, Postfix, Terraform, Graphene, Microsoft Excel
  • Paradigms

    Test-driven Development (TDD), Object-oriented Programming (OOP), Agile Software Development, Unit Testing, REST, Refactoring, DevOps, RESTful Development, Continuous Delivery (CD), Continuous Integration (CI), Microservices, Microservices Architecture, Scrum, ETL
  • Platforms

    Linux, CentOS, Ubuntu, Fedora, Unix, Arduino, Raspberry Pi, Amazon EC2, Amazon Web Services (AWS), Docker, iOS, Android, Cocos2d-JS, Embedded Linux, MacOS, Bloomberg Terminal, Mobile, AWS Lambda, Oracle, Azure
  • Storage

    MySQL, PostgreSQL, SQLite, Databases, JSON, Amazon S3 (AWS S3), Data Pipelines, PostGIS, MongoDB, Cassandra, Google Cloud
  • Other

    Networking, Embedded Systems, Embedded Development, Software Architecture, System Architecture, Back-end Development, Multithreading, Algorithms, Data Structures, OOP Designs, System Testing, Linux Administration, IP Networks, TCP/IP, System Design, Version Control, Linux Server Administration, Linux Server Configuration, Software Development, Software Engineering, Debugging, Debugging Tools, Software Integration, Software Interfaces, Software Implementation, Embedded Software, Web Development, APIs, QGIS, ESP32, FreeRTOS, Firmware, Firmware over the Air (FOTA), SoC, Full-stack, Legacy Code, Legacy Software, Networks, Architecture, Low-level Programming, Hardware, Arduino IDE, Team Leadership, Embedded Hardware, Technical Consulting, VoIP, Leadership, Stream Processing, Bluetooth, Transport Layer Security (TLS), CORBA, Security Analysis, Code Review, DHCP, DNS, SMTP, Reverse Engineering, Game Programming, Game Engine Programming, Futures & Options, Stock Trading, Trading, Fintech, Options Trading, Finance, Concurrency, HTTP Request Methods, Data Visualization, PCB, PCB Design, Sensor Data, Sensor Fusion, Hardware Design, LoRa, I2C, Serial Peripheral Interface (SPI), Device Drivers, Smart TV, Circuit Design, Electrical Engineering, PlatformIO, Robotics, Encryption, Google, SSL, Cisco, CGI, Linux Kernel, Data Engineering, Computer Vision, Image Processing, GPS, HTTP, Soldering, WiFi, Internet of Things (IoT), Authentication, Cryptography

Education

  • Master's Degree in Computer Science
    1996 - 2001
    Technical University of Szczecin - Szczecin, Poland

To view more profiles

Join Toptal
Share it with others