to be disclosed... but sneak peek:
- technical leading, team leading
- 20 years frontend development (angular, html, css, js, php)
- 15 years sysadmin (linux, virtualization, automatization)
- 5 years dba (mainly oracle + mssql, some mysql + postgresql)
- few years of desktop software development (delphi)
- starschema ltd - 5 years (biggest data company in the country)
- t-systems - 5 years (enterprise services)
- others (kravtex, pentatrade, etc)
soft skills
tech lead
Since joined the Port Optimizer™ development in 2017, I
became responsible for all frontend development. Under the
umbrella of PO, I started 5 green field projects for both Port
of Los Angeles (USA) and Port of Gothenburg (Sweden). We had
around 30 people contributing to those codebases in the years.
speaks business
I'm involved in product planning, members are expecting my ideas
and opinions about goals and how to approach them. I translate
between product people and developers to have everyone on the
same page.
product mindset
Apart from from keeping a high standard in actual
implementation, I'm not into try out every bleeding-edge
technology unless the product benefits from it. I'm more into
"choose the right tool for job" mentality: product and users are
first.
systems thinking
I have no problems understanding complex systems or even
designing them, I'm heading towards the architect role in the
near future. I like to see the product as a whole, not just the
frontend.
attention to details
Pattern matching is one of my skills which makes me able to spot
differences quickly. And when I find one, I definitely call it
out. With my change review process we create much less bugs than
an average team. Pixel-precise implementation? Shouldn't be a
problem!
passionate
I'm doing this since the millenium and not bored at all. I'm
taking new challenges and responsibilities bravely, I see my
personal development in every opportunity. I like to learn a new
technology every year or so.
curious
While working, I keep an open eye to all neighbouring
professions: let it be ux, business or data related, I'm happier
when I'm involved in those challenges.
proactive
My strict review process strangles bugs in the root. When I see
recurring patterns, I instantly think on a general approach to
cover them. I reorganize for better velocity before it starts to
hinder the development. My years in IT let me evaluate different
scenarios on the spot, this early feedback saves a lot of
meeting hours.
focused
I don't let myself get distracted, I always keep my eye on the
goal. Give me space and time, you can expect fast and accurate
results.
critic
I'm not shy to call out problems, inconsistencies, risks. I
phrase my doubts before they can do harm and keep in everyone's
task list to address it based on the priority. Of course you can
expect me to help with these if my skillset is useful.
agile
I use to say: "Agile™ is too slow for the end-users".
Processes choke progress too much, we do "rapid-development"
every now-and-then when we want to achieve something reasonably
fast. For me, real agility means that product ideas or
requirements can be implemented next day.
mentor
Based on the feedback I received, they say I'm a good mentor. I
have the patience to explain things on the level the listener
understands. I'm encouraging discovery with questions and
guidance, pointing to useful references to sparkle ideas. I'm
not stingy with positive feedback even for the smallest things.
supporter
Ask me anything from my skillset, I'll try to help to the best
of my knowledge, especially when we are rowing in the same boat.
Sometimes I hold small workshops to share my knowledge with
smaller audiences.
autonomous
It is not a problem for me to work alone or with an empowered
team separately. With just enough information for the task I'll
explore the challenges, boundaries and limitations then deliver.
up to date
I keep an eye on the most fruitful technical news and blogs. I
have at least an impression of every important technology of
today. I don't hesitate to share my findings worth thinking with
anyone who can benefit from them.
helps hiring
I particularly enjoy doing interviews, I like to develop my
people judging skills. A team member once said "yours was the
best job interview I've ever had".
hard skills
angular
Starting with version 4, I was part of the evolution of Angular
till today. I'm using it daily for my main projects, I made some
public libraries for it as well, available from npm. My aim is
to keep one version away from the newest, so I let it mature
enough to be used in production.
ngrx
My choice for state management is NGRX. One of my FOSS projects
(api-caller) is built on top of it.
typescript
Hence working with Angular daily, I know typescript. I'd choose
it for other frontend frameworks as well if I had to work with
them.
frontend
Making web pages, webshops and other wab-based solution as a
freelancer for 20 years now, I know my way around in the
frontend world. I followed the evolution from frames to tables,
tables to floating divs and finally arrived at flexbox and grid.
html
Not so much to say about HTML since it is the base of all web
frontend work I've done and doing. I'm hard to surprise with it.
css
They say CSS is the language which is the simplest and hardest
in the same time. It's so obvious at first but so complex when
done well. I'm using SCSS on top of it to make a bit easier.
clean code
I treat clean code as an insurance of long-term maintainability.
I regularly revisit existing patterns, adjust my approach based
on best practices and always remember when I shot myself in the
foot with some antipattern.
fluid design
I don't believe in the so-called "grid systems". I don't want to
force the product or UX teams to make compromises to make my job
easier. They are working for the users, so should I, therefore
restricting creativity with artificial boundaries is not my
approach. Fluid design is what I go for: every single resolution
from 320px to 2560px should look just right.
automation
What if I have to do the same task again and again? I'll
definitely automate it. I know the toolset for a lot of OSes to
get them working instead of me (I made MPE/iX to have all the
world on a string. Don't know MPE/iX? It is an OS older than
me).
git
The most important thing to get git working is not else than
confidence. If you can see thru it, it will eat out your hands.
I rarely encountered impossibilities while worked with it and I
trust it my code daily.
scripting
As a supplementary skill to automation, I have experience with a
lot of scripting languages. I'm using batch and powershell on
windows, bash and other processing tools on linux. Sometimes
when a particular library suits for the job, I reach out to php
and javascript to get it done.
ux/ui
I'm always watching the work of the designer team with
curiosity. I regularly read articles and case studies about
which approach is currently the best, what are the trends, but
obviously with developer's eyes. I'm not blessed with visual
creativity though.
ci/cd
Apart from my automation and scripting skills, I'm easily ramped
up to the used CI/CD technology on the projects. With the devops
team, together we find ideal solutions faster for special cases.
svg
When a particular visual representation needs a more
sophisticated tool than just plain html + css, I don't hesitate
to reach out to the toolset of SVG. The generative art in the
background is made with SVG and some JS as well. I can put
together data visualization elements with pure SVG or with D3.
figma
Figma, Adobe XD, you name it. I can quickly adapt to the used
visual designer tool what's on the project. I'm currently using
Figma to work with UX and product teams.
sql
Part of my web developer and database administrator skills, I
regularly used SQL to solve data related questions. I'm familiar
with keys, joins, indexes, tablespaces, reorganization and
optimization to some extent.
rest
Working SPAs obviously brought the REST approach with it. I'm
familiar with what I can expect from a REST APIs, I made some
simple implementations myself (nodejs: koa2, php: slim, rust:
actix).
pwa
With the ability to make SPAs and implementing fluid design, I'm
in picture of what people expect from a PWAs. I have experience
with simple applications I made for my daily routine.
virtualization
I jumped on the virtualization wagon early, tried out some
technologies and ended up using Xen as my daily driver on my
self-hosted project server and also one of my jobs as a system
administrator. On my desktop I'm using Virtualbox.
docker
I'm familiar with the philosophy of docker, tried it out a few
times, though it not fits for my regular uses cases. On my
projects, the devops team utilizes k8s on top of it, so I'm
partially in picture what is happening in the background.
assembly
As optimization is a thing I'm enthusiastic for, assembly is an
obvious choice to speed up things. I got to know it very early
in my career but since I'm not using daily, it is just for fun
for me.
nodejs
Let it be scripting, data streaming or simple backend solutions,
I often reach out to NodeJS on server side. I've used Koa2
framework a few times to accomplish simple REST APIs.
backend
I don't consider myself a full-stack developer as my main focus
is on the frontend at the moment, but since I've touched a few
solutions to create backends, I can be ramped up pretty quickly
on this kind of work.
oracle/mssql dba
I've spent significant amount of time working with enterprise
databases, like Oracle 9i - 12c, MSSQL 2000 - 2015. My
experience includes installing, maintaining, troubleshooting,
optimizing, migrating instances and databases. RAC, Standby,
Mirroring all were part of my daily work at a time.
linux sysadmin
I'm using linux on server side since 2004. Most of the time it
was a secondary skill, but I spent years with active system
administration at Kravtex. I built the whole infrastructure from
scratch using linux and xen.
php
As a freelancer web developer (which I still am) I created
around 30 different projects using PHP. My focus has shifted
towards SPAs in the past few years, but if the projects need
simple, server-side, widely supported approach, PHP is my
choice.
delphi
Delphi is my solution when something needs to be done as a
Windows desktop software. I often created tools for myself when
I couldn't find any useful on the wide internet or it was too
bloated for my needs.
2