Przemek Urbanski, Software Developer in Szczecin, Poland
Przemek Urbanski

Software Developer in Szczecin, Poland

Member since May 11, 2015
Przemek is an engineer with a master's degree in computer science with over 20 years' worth of experience gained in companies like Bank of America, Bloomberg, and Deutsche Boerse. He has developed a satellite launching system, bank trading system, mobile operating system. Although he specializes in Python, C++, and Linux, he very familiar with a vast amount of technologies due to his many contract assignments.
Przemek is now available for hire

Portfolio

  • Toyota
    Amazon Web Services (AWS), CSSS, HTML, Bash, Git, TCP/IP, Networking, VoIP...
  • Acer
    Git, Bash, Linux, SQLite, Oracle, PostgreSQL, ODBC, SQL, Docker, Python
  • Bank of America
    Makefile, Git, Oracle, SQL, Bash, Linux, Google Test, Boost, C++, Mockito...

Experience

Location

Szczecin, Poland

Availability

Part-time

Preferred Environment

Linux, C++, Python

The most amazing...

...experience was winning an internal competition for the most performant prototype of a trade exchange system.

Employment

  • Senior Full-stack Developer

    2020 - 2020
    Toyota
    • Researched and tested many eLearning solutions, in order to find a system that could be adjusted to the client's needs.
    • Deployed, customized, and further developed a web-based eLearning platform.
    • Deployed and administrated an online video streaming solution to allow the company employees to take part 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 eLearning and video streaming platform.
    • Supervised and improved security on Linux-based servers.
    • Integrated the web eLearning system with a Google authentication API.
    • Wrote extensive documentation for deployed systems administrators and future maintainers.
    Technologies: Amazon Web Services (AWS), CSSS, HTML, Bash, Git, TCP/IP, Networking, VoIP, PostgreSQL, Google API, Linux, AWS, JavaScript, PHP, Python
  • 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, SQLite, Oracle, PostgreSQL, ODBC, SQL, Docker, Python
  • Senior Software Developer

    2018 - 2019
    Bank of America
    • Upgraded the very complex equity trades valuation system to use the latest derivatives analytics library.
    • Implemented software used for 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 the 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
  • Senior Software Developer

    2016 - 2017
    Bloomberg
    • Implemented lock-free multithreaded real-time processing of exchange data. It resolved the problem of data spikes encountered daily when the market opens.
    • Redesigned the C++ library used for redundancy based on the master-slave approach. The most valuable new feature was an option to force a chosen node to become a master.
    • 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 a variety of 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++
  • 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, CppUnit, C++
  • 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
  • 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
  • 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++
  • 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
  • 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++
  • 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++
  • 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
  • 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
  • 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
  • Unix Systems Administrator | Web Developer

    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

Experience

  • 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

  • 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

  • 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/

  • 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

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

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

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

    Git, GDB, Makefile, GNU Debugger, Apache, Jenkins, CVS, Bloomberg, RPM, Maven, Postfix
  • Paradigms

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

    Linux, CentOS, Ubuntu, Fedora, Unix, Amazon Web Services (AWS), Docker, iOS, Android, Cocos2d-JS, Embedded Linux, MacOS, Mac OS, Bloomberg Terminal, Oracle, Azure
  • Storage

    MySQL, PostgreSQL, SQLite, Data Pipelines, MongoDB, Cassandra, Google Cloud
  • Other

    Networking, Software Architecture, System Architecture, Back-end Development, Multithreading, Algorithms, Data Structures, OOP Designs, System Testing, Linux System Administration, IP Networks, TCP/IP, System Design, Bash Scripting, Version Control, Linux Server Administration, Linux Server Configuration, Software Development, Software Engineering, Debugging, Debugging Tools, Code Refactoring, Software Integration, Software Interfaces, Software Implementation, Web Development, APIs, Embedded Systems, Embedded Development, Leadership, RESTful APIs, Data Stream Processing, CORBA, Security Analysis, AWS, Code Review, DHCP, DNS, SMTP, Reverse Engineering, Game Programming, Game Engine Programming, Embedded Software, Futures & Options, Stock Trading, Trading, Fintech, Options Trading, Finance, Concurrency, HTTP Request Methods, Data Visualization, VoIP, Google, Bluetooth, Transport Layer Security (TLS), SSL, Cisco, CGI, Linux Kernel

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