Front End 

Vesa Piittinen

  • I love performance, JavaScript and CSS.
  • I value native browser behaviour, HTML5 and accessibility.
  • I avoid haste and take the time to refactor.
  • 20 years as hobbyist before going pro since 2013.
  • It is very hard to hire me.

Hey tech savvy person! Have some tips & tricks!

On desktop you can use arrow keys to navigate between the pages. Or press tab key! That works too. In case you're a dev you might be interested to check out the source: it contains a lot of features considering how little vanilla JavaScript there is.

I'm not the UX guy

I'm a developer, not a designer. However I'm probably one of the more designer oriented developers: I can take the layouts and produce an implementation that improves upon what is expected. I build more than is asked for, essentially making a good design a great design. It doesn't only look good, it feels good.

Technologically this means I take care of HTML semantics, pay some attention to accessibility issues, consider the way search engines see things and add in extra transitions in CSS if they seem like a thing that would improve experience for the user. I can work with the complexity involved in managing all these concerns while also managing the complexity of related application state.

In short I'm excellent with all the important parts involved in front end web development when quality is set as the most important factor. And I'm being honest here: I question things all the time, including what I think of myself. I'm good in what I do, but I'm not vocal about it much more than what you've read here. I'm just the quiet guy who puts the things in order.

I care

This is probably my main personality trait, even if I don't push it down your throat. But in general I care about a whole lot of things, and I pay attention to detail. I lack a bit in my abilities to socialize with other people in that I don't care about parties or spending my free time with my co-workers, I pretty much never drink beer or alcohol, and if I tell stories, well, they're utter nonsense. This however enables for me to see and understand things in a different light to many other persons and thus I complement a team or specific types of people in many unique ways.

I work for Oyj

When I joined the company in 2013 my only merit was, essentially, having 20+ years of hobbyist development experience. I didn't have any professional experience of notable value at that point.

During my first year I introduced HTML5, cleaned up the HTML syntax eventually improving search engine ranking, fixed front side performance issues on JavaScript side and added some nice "ajax style" cart features to the "web 2.0 legacy ecommerce site" that existed at that time.

During my second year work started on the modern responsive web which was when React was chosen as the main technology, which ended being a successful choice. The first project was to replace the checkout process with a new one. The new checkout is so good it has been essentially cloned by a few other ecommerce sites in Finland, even by one that could be considered as competitor.

Third year included a big push to replace the old website entirely with the new responsive site. Some hard things included refactoring the whole codebase from unwanted technologies to JavaScript as due to time limitations the project was started partially by a third party which gave quick results, but poor quality code and design choices. Also there were a lot of new technology and solutions at this time, including things like React Router and Redux, which were adopted.

Fourth year saw the completion of the main goal and the old legacy site was replaced by the new responsive ecommerce site for users of all devices. The site has been a great success and has kept quite competitive as a company. Main focus has changed from pushing a lot of new features into fixing issues resulted from feature focused development, focusing more on improving codebase and updating technology choices.

In fifth year we hit another milestone achievement as at end of 2018 the site became fully SPA enabled, giving a massive boost to mobile phone experience. I also took part in implementing some new features like lists. Overall design also improved a lot during this time thanks to another great addition to our team who has massive experience and a good eye for layout.

Hello recruiter person!

So you're considering sending me a message, or you already sent me a message and got redirected here. I'll begin with the usual: it will be hard to hire me. As if that would be new with the current developer market. At the moment I already know one place where I'd like to go after my current position, however there are a few great reasons for me to stay where I am for a few years. I do 6 hour days, for example. I need time for my own projects which do not bring any money to my pockets, but I find them important and worthy of my time.

Is there anything you could do? Well, yes. You could always offer me a notable pay increase, or you could offer me my existing salary level, but with less hours. Though I already do 6 hour days. Another way to pursue my interest would be to tickle my non-programmer interests: things like helping out advancement of science, work related to fighting against the environmental crisis, or culture and arts.

There is one mistake that I often see when people are hiring experienced front-end devs: they seem to be looking for full-stack oriented person by throwing wishes of additional skills of back-end or devops. But if you're looking for a front-end dev, who really is interested of the front-end, then shouldn't you promote the front-end challenges that you have? If you want to tackle developer experience, hire a person to be responsible of that. If you want someone who can do it all, you're asking for a full-stack. And if you really need a great front-end, then focus on that. It is nice to wish to get a person who has broad sets of interests, but you shouldn't mix these wishes with what you are really looking for.

"Actually, it would be nice if you told more about your skills…"

Techs and trends I deal with (updated on June 2019)

  • React, Redux, React Router
  • Universal JavaScript with Single Page App
  • Responsive web design
  • ES6+ / Babel
  • NodeJS
  • Google: Universal Analytics, Tag Manager, Enhanced Ecommerce, Search Console, AMP
  • And I'm very good with CSS and HTML5

I've been working on React based solutions since summer 2014. Based on the experience it is clear React is currently the best way to go when working as a team on a JS project as it eliminates certain types of bad code style and design choices, and gives a clearer skeleton on how to work with the user interface. Redux adds in to this by doing the same with application state, eliminating issues and clutter that comes when working with React only. Though Redux is a bit verbose. Despite that: still great for bigger apps.

Of course there are other kind of issues: it is very hard to maintain acceptable levels of performance, especially when working with a larger app. Also, since JavaScript world around React involves a lot of cutting edge technologies it is challenging to keep up and figure out what is important and worth learning.

Game related stuff

I have a project to translate Civilization VI to Finnish. Yeah, tell me about it! That's an awful lot of work to do for a guy who has no education background in translating. But I like languages, despite only speaking Finnish and English fluently. I know some Japanese, and a little bit of Swedish because Finland thinks I should've learn it. I really didn't. So my Japanese is better than my Swedish, but I'm very much in beginner level in Japanese as well. Anyway, I have ability to not only refactor code, but to refactor between natural languages.

The Settlers Map Generator creates playable maps for the game. The maps have a very great variety. I think the landscape it creates is quite superior to about any other map generator tool I've seen. The end result works very well with the game.

This tool is probably the best offering that I can give of my skills outside the "web tech stuff" category. The logic that creates the landscape is not based on any existing algorithm – it is 100% hand crafted by me.

Web stuff

CodePen is the playground where I occasionally experiment. But sometimes it is hard to test older browsers there so I put my stuff on this site instead.


Programming (writing articles occasionally)
Finnish homepage
Some of my hobby sites
Kontu: Finnish community and wiki on Tolkien's Middle-earth
Maaya's Forum