Ole Christian Rynning
8th February 1982description
Ole Christian is Master of Informatics from University of Oslo 2006. He is an enthusiast engaged in working efficiently and smart.
Among major fields of interest are programming of both frontend- and core applications. He has both breadth and depth in knowledge and experience with development of web, web-services, databases, integration, automatization, concurrency, scaling and deployment. He also has experience with maintenance and operations including automatization, virtualization, high-availability, scaling, networking, OS, debugging, tuning, et. al. in UNIX-based development and production environments.
Prior to starting Uppercase AS, he was a consultant in BEKK, Research Assistant at the Norwegian Research Centre for Computers and Law, UiO, and a Developer in Primetime AS.
Ole Christian thrives in value-driven agile teams sporting high velocity and complex domains. He enjoys working closely with both business and technology experts.
Relevant Work Experience
- Jul 2012 -
- Programmer / Partner, Uppercase AS, Oslo, Norway
- Nov 2010 - Jul 2012
- Head of Dynamic Languages Group, Bekk Consulting AS, Oslo, Norway
- Jul 2009 - Jul 2012
- Senior Consultant / Senior Developer, Bekk Consulting AS, Oslo, Norway
- Jan 2008 - Jul 2009
- Consultant / Systems Developer, Bekk Consulting AS, Oslo, Norway
- Jul 2006 - Aug 2007
- Research Assistant, Norwegian Centre for Computers and Law, University of Oslo, Oslo, Norway
- Jan 2005 - Nov 2007
- Programmer and systems administrator, Primetime AS, Oslo, Norway
Education
- 2006 - 2006
- 1. section Law school, University of Oslo, Oslo, Norway
- 2005 - 2007
- Master of Information Technology. Computers & Law, University of Oslo, Oslo, Norway
- 2002 - 2004
- Bachelor of Information Technology. Network and Software Development, Bond University, Gold Coast, Australia
Technical Profile
Programming Languages
Object-oriented, Functional, Imperative, Dynamic/Static Type Systems, Strong/Weak Type Systems, Rule-based languages. Creation of Grammars, Parsers, Lexers, Compilers and DSLs
- Expert
- Ruby, Java, C, JavaScript, Python, SQL, Bash.
- Advanced
- Clojure, Scala, C#, Perl, PHP.
- Basic
- Go, C++, Fortran, Haskell, Erlang, ML, Prolog et al.
Platforms/OS
- Expert
- Mac OSX, Linux, UNIX (Solaris, BSD & HPUX)
- Advanced
- Windows
Technologies
- Web-technologies/Frontend
- Expert in JavaScript, HTML, CSS, JSON, REST, XML-*, RDF-*, OWL, Topic Maps, Semantic Web, much more.
- Integration
- Enterprise Integration Patterns extensive experience with mapping and anti-corruption layers in different contextes. REST, WS-death*, RMI...
- Some popular Java frameworks I have vast experience with
- Unfiltered, Sinatra, Ruby on Rails, Lift, Jersey, Spring MVC, Camel, PicoContainer, Spring, Guice, JSR311, JEE, JPA, EJB, JAXB, Hibernate, Cucumber, FitNesse, and many others + plenty of libraries.
- Web and Application Servers
- HAproxy, nginx, F-5 BigIP, Apache httpd, Jetty, Glassfish, Tomcat, JBoss, Oracle WebLogic, OC4J and IBM WebSphere
- Messaging
- ActiveMQ, RabbitMQ, mQseries and Sonic Messaging Server.
- Databases
- MySQL, MongoDB, PostgreSQL, Memcached and Oracle. Also some experience with: Neo4J, CouchDB, MS SQL, DB2, Redis, Voldemort and Cassandra.
Methodology and practises
eXtreme Programming (XP), agile (Lean, Scrum, ++). SICP ;) Test- and Behavior-driven development/design (TDD/BDD), Domain-Driven Design (DDD), OOAD, etc.
Project Experience
Large Nordic enterprise within logistics and transportation
- Period
- Feb 2010 - Jul 2012
- Project
- Delivery
- Role
- Lead Developer
- Technology
- Linux, Solaris, BigIP, Puppet, Chef, Several relational and non-relational DBs, Ruby, Java, several different Java Application Servers.
- Description
- Architected and developed automated solution for provisioning configuration of environments for enterprise-wide projects. Used to deploy and manage software systems throughout their life cycle. Wrote software (Ruby) for automated and managed delivery used by several teams and projects. Fully automated deployment, zero-time deployment, A/B testable infrastructure.
Large Nordic enterprise within logistics and transportation
- Period
- Aug 2010-Jul 2012
- Project
- Booking
- Role
- Developer
- Technology
- Java, Ruby, Spring, Spring MVC, Jersey, Jackson, JAXB, Hibernate, Jetty, Mockito, JUnit, Cucumber, MySQL, MongoDB
- Description
- Development of product ordering (packages, transports, cargo, express) both nationally and internationally. Integrations with accounting, orders, several different transport systems, tracking and other support systems.
Large government-owned enterprise within postal distribution
- Period
- Dec 2010 (1 month)
- Project
- Route
- Role
- Developer
- Technology
- Java, WebSphere, AIX, SAS, Oracle
- Description
- Participated in crisis-team for a failed deployment of a major software project (5 years of development) delivery from third-parties. Participated as specialist for tuning, debugging and scaling. Re-wrote several pieces of buggy concurrent code.
Large Nordic enterprise within logistics and transportation
- Period
- Jan 2010-Aug 2010 (7 months, greenfield) - Jul 2012
- Project
- Reporting
- Role
- Developer
- Technology
- Java, Spring, Spring JDBC, MySQL, Oracle DB, DB2, Oracle WebLogic, Oracle Access Manager, Jetty
- Description
- Development of extranet for B2B reports (datawarehousing). Integrations with accounting, production, manufacturing, transport systems and realtime eventbased logistics systems.
Large Nordic enterprise within logistics and transportation
- Period
- Feb 2010 - Jun 2010 (4 months development) - Jul 2012
- Project
- Mobile Tracking
- Role
- Lead Developer
- Technology
- REST, JSON, iOS, Android, Hudson/Jenkins, ...
- Description
- Development of (native) mobile Tracking & tracing applications. Architected APIs into the infrastructure supporting the mobile devices and managed teams of interns.
Large Nordic enterprise within logistics and transportation
- Period
- May 2009-Jan 2010 (maintenance: Jul 2012)
- Project
- Tracking
- Role
- Developer
- Technology
- Java, Spring, Spring WS, Spring JDBC, JUnit, OC4J, FitNesse, Hudson/Jenkins, ...
- Description
- Development of new Tracking & tracing application across several transport and logistics specialists (daughter companies).
Large Nordic enterprise within logistics and transportation
- Period
- Feb 2009-Aug 2009 (8 months active) - Jul 2012 (maintenance)
- Project
- Supply Chain Management
- Role
- (Lead) Developer
- Technology
- Java, Spring, Spring MVC, Spring JDBC, Spring Security, Camel, JUnit, PostgreSQL, Cucumber, EDIfact, XML, ANSI, ..., Hudson/Jenkins
- Description
- Developed international cargo tracking pilot integrating with four international agents, three freighters both over sea and air. Extremely heavy integrations project across borders and continents. The system enables customers to track status of large purchase orders to several vendors. Pilot integrated with two major customers in the oil-sector.
Large Nordic enterprise within logistics and transportation
- Period
- Jun 2009-Jul 2012
- Project
- Price Quoting Service / APIs
- Role
- Developer
- Technology
- Java, Spring, Spring MVC, Spring JDBC, JUnit, FitNesse, JSON, WS-*, Hudson/Jenkins
- Description
- Price quoting and coverage service for package and cargo products in the Nordic region. 3 months active development, 3 years maintenance of products, etc
Norwegian Government department
- Period
- Aug 2008-Jan 2009 (5 months greenfield)
- Project
- Legal Information System
- Role
- Developer
- Technology
- Java, JUnit, RDF, OWL, XML/XSL, JavaScript, Ruby, RSpec, Enonic Vertical Site, MySQL, Hudson, Tomcat
- Description
- Legal Information System used by largest Norwegian govt. entity covering legal cases, statutes, legislation, guidelines. Heavily interconnected data in large quantities.
Norwegian Government department
- Period
- Feb 2008-Aug 2008 (6 months legacy brownfield)
- Project
- Self-administration Systems
- Role
- Developer
- Technology
- Java/J2EE, WebServices (Axis), Spring, Struts, Struts2, Hibernate, EJB, Maven 2, Enonic Vertical Site, BEA WebLogic, IBM Websphere, Apache Tomcat, Oracle DB, CruiseControl, Ant, Maven2 m.m.
- Description
- Simplified, replaced and consolidated several legacy systems developed for years by dozens of developers from different companies. Developed new self-administration features for users of the government department services (over 550 000 users). Both backend and front-end. Transferred code from ClearCase, Promotion and CVS to Subversion, and setup of the continuous integration architecture. Deleted far more code than I wrote.
Large mutual investment/financing corporation
- Period
- Jan 2008-Feb 2008 (1 month)
- Description
- Calculators and finance visualizations of loans, realtime status/charts of funds and mutual funds.
Backstage / Manual Design / BY:LARM / Øya
- Period
- Okt 2006-Dec 2006 (3 months)
- Description
- Ruby/Rails planning component integrated into a booking and event system used by most major music festivals in Norway.
Politiets Fellesforbund (Union of Norwegian Police)
- Period
- Apr 2006-Aug 2006 (3 months)
- Description
- Rails app handling information system for union-members such as legal, offers, benefits, booking of cabins, news, ...
Fund brokerage/investment/finance company
- Period
- Jun 2005-Okt 2006 (4 months)
- Description
- Java Web application for purchasing/investing in funds.
Norwegian Association for Allergics and Asthmatics
- Period
- Mar 2005-Jun 2005 (4 months)
- Description
- Ruby / Flash app for reporting (visualization) of actual and forecasts in pollen-levels. Used by media, allergics and weather reporting services.
Primetime
- Period
- Jan 2005-Aug 2006 (1.5 years)
- Project
- Primetime
- Role
- Developer
- Technology
- Java (and a little bit of C)
- Description
- Media platform solution with realtime streaming component and a Java-based media CMS (videos, streams, images, news). Several media-customers.
Microsoft / Bond University work experience program.
- Period
- Aug 2003-Nov 2003 (3 months++)
- Project
- Spotlight
- Role
- Developer (Intern)
- Technology
- C#.NET, SharePoint 2003
- Description
- University services integration project. Developed smart documents for various courses, deliverables, notes, and a web-service for searching referencing Library records from within MS Office. Project was sponsored by Microsoft and won the APAC region contest for Office 2003 Integration and was used in accordance with their SharePoint Launch.
Honorary, Volunteering, Community
- 2008-
- Program Committee JavaZone 2009-2011. Also developed web sites and conference system.
- Aug 2011-
- Organizer Oslo Socially Functional (Functional Programming meetup).
- Oct 2007-Aug 2011
- Assistant Organizer Oslo XP-meetup (second largest meetup in Europe)
- Oct 2007-Jul 2012
- Arranger of Smidig (Norwegian for Agile) 2007-2011, Program Committee, Development of web sites and conference system.
- 2009
- Leader group JavaZone 2010
- 2003
- ACM Student Chapter Chairman at Bond University and Director and Systems administrator at IT Students Association.
Presentations and Publications
- 2011
- Deklarativ konfigurasjonsstyring med Puppet [Declarative Configuration Management with Puppet] (presentation - JavaZone 2011)
- Continuous Delivery (workshop - ROOTS 2011)
- Three simple techniques for Continuous Delivery (lightning talk - ROOTS 2011)
- Kontinuerlige Leveranser på Bring [Continuous Delivery at Bring (It's easy to release every day)] (presentation - GoOpen 2011)
- Professional development with Ruby (three part course, NTNU)
- 2010
- Scala & Lift (one-day course/workshop)
- Deployment workshop (workshop)
- TDD in JavaScript (internal course)
- Beyond Estimation (lightning talk - XP2010)
- JRubyfiser din java-app [JRubify your Java-app] (internal presentation)
- 2009
- En introduksjon til Scala-test [An introduction to Scala-Test] (presentation)
- Rails v3 Contracts & Interfaces (presentation)
- Ruby-utvikling med Google App Engine [Ruby-development with GAE] (internal presentation)
- CouchDB og Neo4J - Alternativ persistering [CouchDB and Neo4J - Alternative persistence] (presentation)
- 2008
- CouchDB og Neo4J - Alternativ persistering [CouchDB and Neo4J - Alternative persistence] (presentation)
- Groovy & Grails for Ruby og Java-utviklere [Groovy & Grails for Ruby and Java developers] (one-day course)
- Ruby for nybegynnere [Ruby for beginners] (half day course/workshop)
- Alle prosjekter trenger en drifter [Your project need ops] (lightning talk - Smidig 2008)
- 2007
- Juristopia - Semantic Wiki for Legal Information, CompLex 2008/03 (research publication)
Awards and Honors
- 2012
- Farmandsprisen - Nominee (team/project)
- 2011
- Gulltaggen - Bronze (team/project)
- 2008,2009,2011
- Farmandsprisen - Gold (team/project)
- 2007
- Gulltaggen - Gold (team/project)
- 2003
- Bond University - Vice-Chancellor's list of academic excellence
- 2003
- 1st (shared with one other team): Microsoft - Project: Spotlight. University Innovation/Development Competition, Australia/Asia
- 2003
- 5th: ACM International Collegiate Programming Contest (ICPC), Regional finals: Australia/Asia (on team with two others)
- 2002
- Bond University - Dean's list of academic excellence