Curriculum Vitae for Hans Liss

This is work in progress and nowhere near what a real CV should be like, as yet.



Hans Liss I am a programmer with an extensive experience in many different areas of the field of computers and Information Technology.

I am currently working as a group manager, project manager and programmer at the IT Support department at Uppsala University. Our group is attempting to establish ourselves as a kind of “web studio” with focus on providing cost-effective and reliable custom web page development, among other things.

Our department provides systems management services, as well as backup, procurement and software development at any level for the entire university. I have been involved in one way or another in many or most of those fields over the years.

For me, working in this field is as much a hobby as it is a professional calling.


There are a few focal points - areas that I have a particular interest in or have at one point or another concentrated on:

  • Advanced systems management, particularily in various UNIX environments in all kinds of flavours.
  • Programming in countless different languages, including
    • Assembler programming for various processors, including Atmel MCU:s.
    • Network and system programming (particularly in C).
    • Script programming in various languages in UNIX and UNIX-like environments.
    • Object oriented design and programming (C++ in the nineties, plus some small Java experience).
    • PostScript, building among other things a printer emulation layer.
  • Network engineering (i have taken Cisco's CRC and ACRC courses and worked with network and router configuration)
  • Security and encryption.
  • Project management and basic ITIL.
  • UNIX and Linux (I was an early Linux desktop user in the mid-nineties) and many other things. Have written code for the Linux routing table system.
  • Windows services and systems programming
  • Web development (primarily PHP+mysql, XML and XSL) and some interest in usability and design.
  • Data structures and algorithms.
  • A hobby interest in MCU and electronics design and programming.

Rather than striving towards focusing on any particular area, I tend to thrive in situations where I can learn new things.

I do not nurture irrational preferences for software environments, like operating systems or languages. I use whatever is available and suitable. I would consider myself an expert user of UNIX and Linux, MacOS X and Windows, as well as comfortable managing most major operating systems.

Of special note

I have pursued or have been involved in a few more interesting activities, that might deserve a special mention. Here are both professional and hobby activities, but they are all related to the computer or IT field.

The LC-Trie project

In 2005, Robert Olsson and Jens Låås, formerly of Sveriges Lantbruksuniversitet (SLU, the Swedish Agricultural University), started implementing an interesting new data structure for storing large amounts of semi-volatile data efficiently, in an attempt to improve the performance of the address prefix matching mechanism within the Linux routing code.

I joined them and proceeded to help working out the exact workings of the algorithm and coding much of it, as well as coming up with several shortcut tricks. We managed to achieve significantly better performance than the old multiple-hashtable implementation, and in the end, the code was accepted into the official Linux kernel and is now the default route lookup algorithm for the Linux kernel used in millions of installations worldwide. In this project, I focused on the actual data structure and the various algorithms used to manage it.

We won the Intel Academic Award for Linux/Open Source development for this work.

Microcontrollers and electronics

Playstation Mod Chip

With no actual training in electronics, I decided a few years ago to experiment with microcontroller programming, and set out to develop an Atmel version of a publicly available design for a “mod chip” for my new Sony Playstation, in order to play imported games.

This design evolved from a hastily made DIL chip montrosity to a small, elegant PCB using SMT components and with a very simple “user interface” to adjust some parameters. With no realistic commercial viability, this project dwindled as games' countermeasures grew more advanced; but I was one of the first few able to run the Japanese version of the Final Fantasy VIII game on a PAL Playstation.

MIDI interface

The next project was an engineer's implementation of an audio-to-MIDI converter, based on measuring pulse width rather than Fourier analysis. I developed the device for a Technochanter This worked far beyond expectations, and was in fact capable of recognizing musical notes from other audio sources and producing MIDI notes thereof.

The device was based on the same Atmel AVR as the Mod chip, using a simple OP amp design for the line-in conversion.

Serial interface

More recently (2004-5), I have made use of my PCB-making capabilities to produce several viable serial line adapters for small routers, which commonly have a built-in serial console interface needing voltage conversion. I made and sold approximately twenty of these to interested parties worldwide.


I prefer programming to most other endeavours, and I cover areas like algorithms/data structures, databases, communication, web, security and many other things.

I believe some of my primary strenghts are a knack for software architecture, rapid prototyping, troubleshooting/debugging, understanding other programmers' code and communicating and cooperating with managers, colleagues and customers.

I speak, understand and write Swedish and English fluently.

cv.txt · Last modified: 2006-11-13 15.56 by hansl
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki