Piotr Tański Programming

What can I do for you?

  • Software development for embedded systems, server backends, mobiles and desktops.
  • C/C++ source code analysis for safety-related systems w.r.t. coding guidelines.

  • Introducing coding guidelines and verification tools into projects acc. to customer’s requirements.

  • Creating websites and online stores for local businesses.



Senior Software Engineer
C Programming Language Certified Associate.
Expert of the C++ Programming Language.
Co-author of the C++ Coding Guidelines for critical systems.
Kotlin/Java developer for Android.

Hello, my name’s Piotr.

My software development career started nearly 9 years ago. Since then, I’ve worked both on-site and remotely for multiple companies, on different projects, and co-worked with great people all around the world. I’ve developed software for both R&D and commercial purposes. I’m reliable, curious and customer-oriented person, still developing myself and polishing my skills.

I value simplicity, clean architecture and design patterns.

I develop software for embedded systems and various OSes in both C and C++ languages (including C++17). I support multiple architectures and platforms. I work with various build systems (e.g. CMake or QMake) and I’m able to manage dependencies using vcpkg or Conan. I have several years of commercial experience of working with different frameworks and third party libraries.

On a daily basis, I work with Boost, Qt5, POCO, Microsoft’s GSL, Protobufs, Flatbuffers, GTest/GMock.

I’m familiar with all popular C and C++ coding guidelines for safety- and security-related and critical systems and I work with them on a daily basis. Moreover, I’ve participated in introducing C/C++ coding guidelines into various projects, mainly for automotive industry. I was also responsible for static source code analysis and reporting the results.

The coding guidelines I know: C++ Core Guidelines, SEI CERT for C and C++, MISRA C, MISRA C++, HICPP, Google Style Guidelines, AUTOSAR C++14 Coding Guidelines, JSF-AV.

I do static source code analysis using following tools: Axivion, Coverity, QAC, Clang-tidy, CppCheck.

I create Android applications in both Java and Kotlin languages. I’ve participated in a few commercial Android projects related with e.g. internet connection, WiFi, BLE or openstreet maps. Also, I’ve developed a few applications on my own that are now published on Google Play store.

I have working experience with several third party libraries, e.g. AndroidX Jetpack, Dagger2, Koin, Retrofit2, RxJava, RxAndroid, Picasso.

I value testable code and architectural patterns, e.g. MVP and MVVM.

I value readable websites and simple content. I set up web pages comprehensively by purchasing a hosting, selecting themes and graphics, and creating the content together with a customer. I’m also able to manually modify themes in HTML, CSS and PHP, if needed.

I use WordPress and Woocommerce as content management systems, as they’re reliable and extremely easy-to-use.

I set up security certificates and configure the website in compliance with good practices and security and optimization tips.


[C++ job interview Q&A] C++ Unions.

[C++ job interview Q&A] C++ Unions. According to https://en.cppreference.com/w/cpp/language/union: A union is a special class type that can hold only one of its non-static data members at a time. It

[C++ job interview Q&A] Throwing an exception from a destructor.

[C++ job interview Q&A] Throwing an exception from a destructor. It’s important to know what happens on throwing an exception from class’ destructor. Is it a good practice? What errors