Christopher A. Trotter

Fullstack Developer

About Me

Hi, my name’s Christopher and I’m a passionate software engineer with interests in event-driven architecture, functional programming, stream processing and concurrency theory. I recently graduated with a master in computer science, where the focus of the study was to interpret concurrency as higher-dimensional objects using formal methods such as category theory, formal verification, model checking, and algebraic topology. As part of the journey, I learned fundamental concepts of concurrency theory, programming languages, event-based vs. state-based models and application of category theory within a functional programming paradigm.

I am focused on putting my passion and skills to good use by supporting organizations and projects with their difficult engineering problems.

Experience

Domstoladministrasjonen

Computas - Consultant

Apr 2020 - Present

domstol.no

The Norwegian Courts Administration's (NCA's) purpose is to enable the courts to deal with challenges presented before them. This is done for instance by providing the support necessary for judges and staff to carry out their roles and to deliver justice efficiently and effectively.

The Norwegian Courts Administration (NCA) is responsible for handling the will or testament of a person (testator) that expresses their wishes as to how their property (estate) is to be distributed after their death and as to which person (executor) is to manage the property until its final distribution. I played my part in developing an integration between NCA and National Population Register (NPR) to partly automate the workflow for handling information about the deceased and their family relations.

This role covered tasks such as:

  • Responsible for ensuring the deployment of microservices from local development to production.
  • Assist in making decisions around the architecture and workflow of the development process.
  • Assist in creating estimations of the work needed in the project.
  • Design the REST API’s based on occuring needs from users.
  • Creating a mockserver that replicates testdata.
  • Assist in coordinating the project.
  • Been involved in the decision making process when considering security.
  • Provide Code review of frontend projects.
  • Provide Code review of microservices.

Mattilsynet

Computas - Consultant

Jan 2020 - Apr 2020

mattilsynet.no

The Norwegian Food Safety Authority (NFSA) is a national governmental body, whose aim is to ensure that food and drinking water are as safe as possible for consumers and to contribute to a high level of plant, fish and animal health.

The Norwegian Food Safety Authority (NFSA) required new solutions that are high user-friendly for their inspectors to use while monitoring animals to ensure that the animals are both safe and healthy.

This role covered tasks such as:

  • Developing API’s that interact with the user-friendly frontend React applications.

Bærum Kommune - ITB

Knowit Dataess - Consultant

May 2019 - Dec 2019

baerum.kommune.no

Bærum kommune is a norwegian municipality that provides services to support people who live within the municipality.

As part of the project, I was involved in developing an integration plattform for all digital services that the municipality provides for the residents of the municipality. I primarily worked with DevOps.

This role covered tasks such as:

  • Implementing a development, test and production environment by using Terraform in Azure.
  • Be involved in the decision making process of the architecture and workflow in Azure.
  • Implementing Azure pipelines (continuous integration and continuous delivery) to automate the development workflow process.
  • Configuration management of the development, test and production environments by using Ansible.
  • Developing an integration solution by using Java Spring Boot.
  • Fetching of information from Oracle EBS database by using SQL.
  • Developing an API Gateway by using Kong and Nginx.

This role covered technologies and methods such as:

Microsoft Azure - HashiCorp Terraform - Azure Devops - Event Driven Architecture - CI/CD - Spring Boot - SQL - XML - Java - JSON - Nginx - Ansible - Azure ARM

Bærum Kommune - FDD

Knowit Dataess - Consultant

May 2019 - Sep 2019

baerum.kommune.no

Bærum kommune is a norwegian municipality that provides services to support people who live within the municipality.

As part of the project I was involved in documenting the proprietary developed invoice system of the municipality. I was also involved in developing an integration solution between the invoice system and an external invoice distribution channel. The integration solution has significantly reduced time and cost by partially automating the process of sending out invoices.

This role covered tasks such as:

  • Developing an integration solution by using C# in the .NET Framework.
  • Developing solutions to handle XML formatet invoices.
  • Implementing an EHF 3.0 Validator to be used in testing the validity of invoices.
  • Fetching invoice information from databases by using SQL.

This role covered technologies and methods such as:

C# - XML - SQL - EHF 3.0

Safe Video Communication

Knowit Dataess - Consultant

Jan 2019 - Apr 2019

seequre.no

Seequre is a video conference and chat solutions that provides SMB markets with a secure way to communicate.

Every small to medium business (SMB) should provide both their customers and employees a secure way to communicate and Seequre is just such a solution. I played my part by developing application solutions and writing documentation on new technology for a secure video conference and chat solution.

This role covered tasks such as:

  • Implementing a proof of concept (POC) which showcased the core functionality of the solution in Flutter.
  • Write a white paper draft of the solution.
  • Been involved in the decision making process when regarding security.
  • Responsible for system and acceptance testing.
  • Responsible for maintaining the existing iOS and Android applications.

This role covered technologies and methods such as:

Reactive development - mobile application development - iOS and Android - Flutter - ASP.NET - RxJava - RxDart - Asana - RxVMS - WebRTC - SignalR - Agile development - Project management

Sparebank 1

IT Consultant

Nov 2016 - Jan 2019

sparebank1.no

A Norwegian alliance of independent banks that helps their customers simplify their everyday finance.

Every bank needs transactions to be properly administered and Sparebank1 is no exception. Managing high volume transactions is hard and I played my part by monitoring and rapporting incidents to ensure safe transactions for our customers.

This role covered technologies and methods such as:

Operations & Monitoring - Incident Management - Splunk - Zabbix - ITIL - Confluence/Jira

Education

University of Oslo

MSc Computer Science

2016 - 2018

Established in 1811, UiO is the oldest higher education institution in Norway, and is widely regarded in terms of its influence, reputation, and academic pedigree as a leading university in the Nordic countries.

The Master’s program deals with system development, programming, data communication, distributed systems and information security. With a Master’s Degree in Informatics - Programming and Networks, One can understand the totality of such systems and the theories on which they are based. One can help develop and maintain such systems, and one has in-depth knowledge of the areas of the program.

University of Oslo

BSc Computer Science

2013 - 2016

Established in 1811, UiO is the oldest higher education institution in Norway, and is widely regarded in terms of its influence, reputation, and academic pedigree as a leading university in the Nordic countries.

The program includes theory and methods for programming both individual machines and machines in networks. One learns to create systems that are reliable, flexible, user-friendly and efficient. Practical solutions to problems are part of the education. One gains insight into the technology behind the computers, how the machine can be used to solve tasks and what challenges the information technology society gives us.

IT is more than a tool for other subjects. As an computer scientist, we are an active driving force in social development. One works with basic issues that provide new insights and opportunities throughout society, by helping creating new applications.

Publication

Sculptures in Concurrency

Computer Science - Concurrency

Dec 2018

Uli Fahrenberg, Christian Johansen, Christopher Trotter and Krzysztof Ziemianski

We give a formalization of Pratt’s intuitive sculpting process for higherdimensional automata (HDA). Based on this, we show that sculptures, Pratt’s Chu spaces, and Johansen’s ST-structures are in close correspondence. We also develop an algorithm to decide whether a HDA can be sculpted and use this to show that some natural acyclic HDA are not sculptures. We believe that our result shed new light on the intuitions behind sculpting as a method of modeling concurrent behavior, showing the precise reaches of its expressiveness. We also show that there are sculptures whose unfoldings cannot be sculpted, and that sculptures are the same as Euclidean cubical complexes. This exposes a close connection between geometric and combinatorial models for concurrency which may be of use for both areas.

Volunteer Experience

NDC Oslo

Crew member

Jun 2015 - Jun 2018

Since its start-up in Oslo 2008, the Norwegian Developers Conference (NDC) quickly became one of Europe`s largest conferences for .NET & Agile development. Today NDC Conferences are 5-day events with 2 days of pre-conference workshops and 3 days of conference sessions.

The conference covered topics such as:

NET Framework - Agile - C++ - Cloud - Database - Design - Devops - Embedded - Front-End Framework - Fun - Functional Programming - Gadgets - Internet of Things - Javascript - Microsoft - Misc Languages - Mobile - People - Programming Languages - Security - Techniques - Testing - Tools - UX – Web and more.

A Little More About Me

Alongside my interests in computer science some of my other interests and hobbies are:

  • Calisthenics
  • Gaming
  • Bartender
  • Barista
  • Mentoring