Personal details
- Full name: Bo Simonsen
- Nationality: Danish
- Date of Birth: February 1, 1983
- Marital Status:Single, no children
- Postal address: Karensgade 12, st. th., DK-2500 Valby
- Phone: +45 32158665
- Cell phone: +45 25304508
- E-mail address: bo@geekworld.dk
Professional skills
Main interests:
- Software development: Object-oriented analysis and design, Design patterns, Software architecture, Software quality assurance, and Programming language design.
- Programming: Generic programming, Concurrent programming, Network programming, Tool development, Optimization and Refactoring of existing code.
- Networks and operating systems: Configuration, Maintenance, and Development.
- Web development: CMS systems, Backend- and Frontend webdevelopment, Webservices.
Technologies with respect to programming (Confidence levels 1-5. where 1 is novice and 5 is expert):
- Programming languages: C/C++ (5), Python (5), PHP (4), Pascal/Delphi (4), Shell (4), C# (3), Perl(3), Java (2), X86 assembler (2), ASP (2), ASP.NET (2), and VB (2).
- Development tools: gdb (4), valgrind (3), make (4), CVS/version-control systems in general (4), autoconf/automake (2), and bison/flex (2).
- Program Libraries: C++:STL (5), C/Python:GTK (4), C++:Boost (3), and Python:SQLObject / sqlalchemy (3).
- Web technologies: HTML/XHTML (5), CSS (5), XML (5), JavaScript / AJAX (4), SOAP (4), Plone CMS/ZOPE (4), Facebook API (4), Twitter API (4), WordPress (4), XSLT (3), and XMLRPC (2).
- Databases: MySQL (5), SQLite (4), Interbase (3), Paradox (3), and PostgreSQL (2).
- Microsoft technologies: Microsoft Sharepoint (3) and Microsoft CRM (2).
Technologies with respect to networks:
- Networks: General network knowledge (5), Traffic shaping (5), VPN (4), Wireless networks (4), IPSec (3), IPv6 (3), and LDAP/Radius (3).
- Operating systems: Linux (5), OpenBSD (3), and Windows (3).
- Servers/Daemons: Apache (4), Postfix (4), Courier IMAP/POP3 (3), Mysqld (3), Exim (3), Squid (3), Hobbit network monitoring (3), Mailman (3), and Sendmail (1).
Education
- cand.scient. (Master of Science, M.Sc.) in Computer Science, Department of Computer Science, University of Copenhagen (December 2009).
I used my graduate study to specialize in Programming and Software development. I took courses on Algorithms, Distributed systems, Generic programming, Human-Computer Interaction (HCI), and Software development. Besides the course work I did several projects and my Master’s thesis on C++ generic programming. - Bachelor of Science (B.Sc.) in Computer Science, Department of Mathematics and Computer Science, University of Southern Denmark (January 2007).
- Datamatiker, Handelsskolen Sjælland Syd (November 2004).
- Mathematical high school exam, Amtsgymnasiet i Næstved (2002).
- Public school exam, Møllevangsskolen (1999).
Employment
- Software developer, Headnet ApS, Copenhagen (November 2011 – ).
- Software developer, Technical Project Lead, KRING Development A/S, Copenhagen (April 2010 – October 2011).
I am developing and maintaining several Plone sites (jointly with our offshore team). On a typical work day I have done Template programming, Python scripting, Javascript programming, Stylesheeting, and Database programming/modelling, and of course plenty of communication. I enjoy that I can follow all solutions from idea to implementation, and that I can be creative both with regards to graphic design and technical aspects. I was working as lead developer on several projects, so my day did also contain tasks of a more administrative nature. - Teaching assistant, Department of Computer Science, University of Copenhagen (February 2010).
I gave a two-hour lecture on Software Architecture. In a similar course in 2009, I gave a two-hour lecture on Generic design patterns. Furthermore I supervised code-review sessions and assessed student papers. - Freelance consultant, BigumCMS, Copenhagen (March 2009 – October 2009).
I did various programming tasks in Python. The main task was to create a back-end system which could access data stored externally in a data warehouse using the SOAP protocol. - Network administrator, The Rasmus Rask dorm, Odense (2005-2007).
I did programming in Python, PHP, and shell script. Furthermore I did traffic shaping, firewalling, setup of web-, mail- and database server, maintenance of mailing lists, maintenance of internal network, and end-user support. Our network provided internet access for 200-300 daily users.
Language skills
- Danish: Native.
- English: Good skills in both oral and written communication.
- Swedish and German: Good skills for understanding.
- Russian: At beginners level.
Spare-time interests
- Aviation,
- Reading and Writing,
- Long walks,
- and Movies.
Selected publications
- Jyrki Katajainen and Bo Simonsen. Adaptable component frameworks: Using vector from the C++Standard Library as an Example. Proceedings of the 2009 ACM SIGPLAN Workshop on Generic Programming, ACM (2009), 13-24.
- Bo Simonsen. Foundations of an adaptable container library. Master’s Thesis, Department of Computer Science, University of Copenhagen (2009).