Curriculum Vitae

picture of moi

I am Torstein. I love working with complex Unix and Linux systems with lots of HTTP servers, web caches, load balancers, distributed memory caches, databases, LDAP and application servers. Making them all play together is a treat.

Also, I enjoy designing and developing Python & JEE applications, using web standards like HTML5, XML, CSS, DOM, ECMA/JavaScript as well as hacking on Python and BASH scripts to glue everything together.

I've been fortunate to work on some of the biggest European web sites and newspapers, helping the customer with everything from operating system patching, database, LDAP, web server, cache server, application server and frontend performance tuning to application development and development methodology.

Distributed development is something I'm comfortable and have great experience with. I've worked with multinational teams in several time since January 2007 and am used to the challenges (and benefits!) of many nationalities and cultural backgrounds.

Getting teams to function optimally, making everyone feel valued and boost the team's development velocity is a hugely challenging and equally rewarding experience that is also the core of my MSc in Human Resource Management.

Specialities: Multi-server architecture and development of JEE systems with very high demands for performance, availability and scalability.

Experience

Escenic, System architect, May 2015 – Present

Back home in the R&D department at Escenic, developing the best Content Management System in the world, constantly playing with as many Linux servers, Java, BASH and REST applications as my mind can muster. I'm also contributing to our cloud platform and do a fair amount of work on our internal R&D infrastructure.

OS: Debian, Ubuntu, CentOS, RedHat; Packaging & repo admin: Maven, APT, RPM; Java: Loads!; Python: Flask, requests; Shell: BASH, sed, awk; Servers: Loads! nginx, apache, lighthttpd, Percona, MariaDB, Derby, Oracle, OpenLDAP, memcached, HA Proxy, Nagios, Icinga; IAM: Gluu, KeyCloak, OpenID Connect, OAuth2, SCIM.

Conduct AS, Senior consultant, February 2013 – April 2015 (2 years, 3 months)

Building world class solutions for our customers using open source technologies such as Linux and Java.

I've worked with these technologies: Java backend and frontend development using JBoss, EJBs, JPA, Apache Wicket, Activiti, Mockito, Hibernate 3 & 4, Spring, Spring Batch, RESTEasy, memcached, Git, jQuery, jChart, CSS & HTML. Not to forget: ActionScript, Flex, Jaspersoft iReporter.

Server setup and operations are most of the time a breeze using: nginx, Apache, RedHat Linux, Ubuntu Linux, BASH, SED, awk & Puppet

Escenic, System architect, February 2012 – January 2013 (1 year)

I worked in a team of five to build a new SaaS solution for Vizrt Online's (Escenic's) customers which later will expand to cater for other systems in Vizrt's portfolio too.

This job was a wonderfully challenging one were I got to work full time on Linux servers and BASH programming, most of which we release as open source github/vizrt/ece-scripts

This job is fully loaded with exciting challenges including: Varnish, nginx, lighthttpd, Tomcat, Percona DB, Ubuntu LTS, RHEL, Debian, NFS, KVM, Amazon WS, Nagios/Icinga, check_mk & Munin. Not to mention thousands of lines of BASH code, performance testing with httperf & siege, creation of DEB packges, own APT repositories and build systems integrating development team efforts with proper release management.

github/vizrt/ece-scripts

Escenic, System architect, November 2008 – January 2012 (3 years 3 months)

As a system architect I was responsible for the general development, architecture and future technical direction of my two teams' products.

Keeping on top of the latest developments in the domain of social media APIs, single sign on, captcha APIs, JavaScript APIs, NoSQL products, HTML5 & CSS, REST, Atom Publishing Protocol, Java frameworks whilst re-examining the RFCs backing the internet as we know it, made for a hugely challenging and rewarding experience.

I've got a keen interest in performance tuning, load testing and multi server architecture and this undoubtedly influenced the specification I wrote.

The size of my teams varied over the years from 2 in the beginning and peaking at 10 later on, through which my role changed from being both architect and tech lead, to acting solely as a system architect (a year of which it was topped up with a product owner role as well).

During these years, I learned that although caring about general architecture, deciding how systems talk together, focusing on interfaces and fundamental principles, communicating technical design and development approach, I am far more comfortable being a tech lead, leading the development team by example, working concentrated on product development with most or all of my commits going into production rather than into PoCs.

Escenic, Senior consultant, October 2005 – November 2008 (3 years 2 months)

I worked with some of the biggest newspapers in Europe, helping them on-site primarily with production environments: Unix, Linux, DBs, LDAP, distributed memory caches, reverse proxies, load balancers, deployment routines, development methodology, web site development and editorial workflow.

I've found it challenging and hugely interesting to work different parts of the newspaper organisations: From both editorial staff, designers and business management to development departments and hosting partners: Finding the correct solution for the customer that serves the needs of all parties' area of interest has been a rewarding experience.

CoreMedia AG, Technical Consultant, 2004 – 2005 (1 year)

Working on one Europe's biggest web portals with hefty JEE development on a Solaris platform with extreme demands for high performance.

This year taught me a lot about working for extremely structured, quality conscious and demanding customers; never settling for anything but the best.

Splendid Internet GmbH, Developer, 2003 – 2004 (1 year)

I'm very grateful for this job as it taught me a lot of the German work ethics, of extreme attention to detail and structured approach to development.

Working as a developer on a project for one of the biggest German telecoms allowed me to work with JEE, SOAP web services, CORBA, GNU/Linux and HP-Unix - all in the same solution!

Opera Software, Intern, 2001 – 2002 (1 year)

Summer intern & part time work involving ECMA/JavaScript, DOM and Python development as well as testing Opera on the Linux platform.

Education

Languages

Programming languages

Technologies I've worked a lot with

Operating systems

My toolbox

Non-technical matters

Ichtys International / KIA, Volunteer teacher, August 2006 ➡️ 2015

→ Once a week for nine years, I worked as a volunteer teacher teaching Norwegian to immigrants from all over the world. During these years, I have had great fun teaching at all levels, from the students who do not speak a word of Norwegian, to the ones who have need to polish and further improve their already well functioning language.

Organisations

Interests

Mountain biking, jogging, hiking, traveling, languages, rock climbing, piano, literature, poetry, politics.

Some customer projects I've been involved in


Licensed under CC BY Creative Commons License ~ ✉ torstein.k.johansen @ gmail ~ 🐘 @skybert@emacs.ch ~ 🐦 @torsteinkrause