Skip to content

Filip Franik / About

Two decades of solving what matters.

I'm a senior full-stack engineer based in Kraków, working mainly with Angular, .NET and SQL. I take features from the database to the user interface, test them properly, and stay with them in production.

[ 01 ] How I work

I don't just deliver code. I leave teams stronger.

My career started in web development in 2006. Since then I have built websites for brands like Makro and CHIP, customised software that coordinates warehouse robots, kept multi-terabyte SQL Server databases healthy under constant load, trained interns, interviewed candidates, and shipped full-stack products for the maritime industry.

The common thread is simple: understand the whole problem, make the solution clear, and share the knowledge needed to maintain it.

Own the outcome

A feature is not done because the code compiles. It is done when it is tested, solves the real need, and works in production.

Flatten the knowledge

Training, show-and-tells and mentoring remove hidden assumptions and give more people the confidence to make good decisions.

Review AI output like any other code

AI writes much of my code, so every change gets my review, an automated pull-request review, and only then a human peer review. Speed without judgement is just faster mistakes.

[ 02 ] Experience

Experience across the full stack.

Current job, remote

Dualog

Senior Full-Stack Engineer

Building and improving products on Dualog's maritime connectivity and cyber-security platform, including Endpoint, Quota, Workspace and the Dualog Portal. I work remotely from Kraków in an R&D team with colleagues in Norway.

  • Deliver end-to-end features across Angular front ends, ASP.NET Core services, SQL Server and PostgreSQL, in containerised services running on Kubernetes.
  • Write, maintain and upgrade automated tests across the stack: xUnit with WebApplicationFactory and Testcontainers on the back end, Vitest and Playwright on the front end, all running in GitHub Actions. This includes moving existing suites from Jasmine to Vitest and from Cypress to Playwright.
  • Work through a layered AI-assisted review process: code generated with Claude Code is reviewed by me, Claude and Codex, the draft pull request is reviewed by GitHub Copilot, and only then does it go to human peer review.
  • Research ways to bring AI into company workflows, such as manual QA tests carried out by Claude Code in a real web browser, or user documentation generated by letting AI explore the interface the way a user would.
  • Flatten the knowledge through regular show-and-tells, so new techniques become shared team practice instead of one person's expertise.
  • Angular
  • TypeScript
  • ASP.NET Core
  • SQL Server
  • PostgreSQL
  • Kubernetes
  • GitHub Actions
  • Playwright
10 years

Elettric80

Programmer, later Subject Matter Expert

Elettric80 builds laser-guided vehicles, palletisers and warehouse management software for automated factories worldwide. I grew from customising code at customer sites to being the person others came to for the hardest production problems.

  • Customised LgvManager, the C# system that coordinates the laser-guided vehicles, for each customer's needs: installing it on site, testing, fixing bugs and adding missing business logic. I soon moved from installing other people's customisations to writing them myself at the head office in Italy.
  • Worked on SDM, the warehouse system tracking every pallet from the production line to the truck. It was mostly T-SQL on multi-terabyte SQL Server databases with constant writes. I diagnosed deadlocks and timeouts, dealt with index fragmentation, and co-wrote the database maintenance procedures.
  • Moved to the new aftersales office in Poland: Tier 2 support, with remote debugging and code fixes on live production systems.
  • Promoted to Subject Matter Expert. Trained colleagues, mentored one to five interns at a time and interviewed candidates.
  • Built, with my interns, a C#/WPF diagnostic tool that automated SQL Server health checks: index fragmentation, deadlocks, slow execution plans and transaction log growth. Also contributed to a web dashboard for SDM.
  • C#
  • T-SQL
  • SQL Server
  • WPF
  • WMS
  • Real-time systems
5 years

WebService

Web Developer

A small web agency within the Solidex group that built corporate websites on MorePortal, its own Plone-based CMS. I joined as a junior and became one of its productive core developers.

  • Started with customer plugins and front-end customisation in Plone templates, MooTools and jQuery, then moved on to the MorePortal core product.
  • Became the only developer on makro.pl, the website of Makro Cash & Carry: promotional leaflets, a Google Maps store locator, and store pages edited by the store managers themselves.
  • Joined the team behind chip.pl, the new site of one of Poland's largest computer magazines, which handled millions of requests a day. I wrote the scripts that migrated the historical article archive into MorePortal.
  • Integrated client portals with Active Directory and SQL databases.
  • Python
  • Plone
  • JavaScript
  • jQuery
  • HTML & CSS

[ 03 ] Outside the day job

Open source and writing.

npm package

Veneer

An Angular library that keeps text readable for people while scrapers and copy-paste get gibberish, using a cipher and a matching generated font. Works with SSR and hydration, and is tested end to end with Playwright.

In progress

EZRestAPI

A C# source generator that turns a plain annotated class into a complete REST API: EF Core storage, minimal-API routes, OpenAPI and RFC 9457 error responses.

Terminal app

ShipWatcher.NET

A live AIS vessel tracker for the terminal: thousands of ships moving on an ASCII world map or in a sortable table, fed by pluggable real-time sources over TCP, WebSocket and REST.

Terminal app

Spotify2MP3.NET

A .NET 10 rewrite of Spotify2MP3 with a Terminal.Gui interface. It reads a Spotify playlist, album or CSV export, matches each track, and produces tagged MP3 files.

Contact

Need broad experience without the big ego?

If you want to compare notes on software, testing, AI-assisted development, or mentoring, I am open to a conversation.