Adam Guest Awesome Developer

A picture of me

I'm a software developer based in Copenhagen, Denmark where I've worked on a wide range of software projects using a broad selection of technologies.

I prefer to develop high quality solutions, with a well thought-out architecture using up-to-date technologies to deliver highly usable and highly capable software to users.

I'm currently excited about working with F# and Swift - I love learning new languages and discovering better ways of building software.

Contact

chamook@chamook.dev | @chamooktweets | @chamook | Adam Guest

Skills

Programming Languages

Proficient in: F#, Swift, C#
Experience with: Java, Objective-C, Javascript

Technologies & Patterns

MVC, MVVM, MySQL, Google Cloud Platform, Azure, Pub/Sub, MongoDB, Unit testing, Git, Property-based Testing, Functional Programming, ReSTful APIs, ASP.NET, .Net core, CircleCI, Docker, Elasticsearch

Employment History

Software Developer Storytel/Mofibo | November 2017 - Present

Originally working as a backend developer building microservices running in docker containers on Kubernetes on Google Cloud Platform. I developed several services in F# and C# - both HTTP APIs and services consuming Pub/Sub messages. Over time I moved into a more "full stack" role continuing to develop microservices in the backend, but also working on the iOS app (after teaching myself Swift) building functionality that made use of the new backend APIs (in Swift, using MVVM) and integrating it with some of the older parts of the codebase written in Objective C. As part of changing CI provider, I was extensively involved in improving the build automation for both backend services and the iOS app.

As I introduced F# to the tech stack, I also worked heavily with training and mentoring other developers - both to teach them a new programming language and a new approach to solving problems, but also helping to develop their existing skills. I was one of the co-creators of the dotnet template that allowed developers to get a new microservice up and running with standard configuration in either F# or C# with minimal effort. I also was a member of the API Standards group within the tech department that worked towards creating guidelines for how the API surface across many microservices should work.

Additionally, I was involved in several recruitment processes, including reviewing applications and running both social and technical interviews leading to several good hires.

Developer 24/7 Entertainment | April 2015 - October 2017

Working in both frontend and backend teams to deliver a range of solutions for media streaming platforms.

On the frontend team working with C#, MVC, WebAPI, and Angular JS to build a single page media streaming application.

On the backend team working on a range of APIs using: C#, F#, WebAPI and more to deliver a level 3 REST Hypermedia API with a comprehensive test suite including xUnit unit tests, property-based tests with FsCheck; and a custom pure dependency injection setup and some use of Azure Service Bus to communicate between different services.

Additionally involved in the development of a functional programming library for C# to allow faster, more robust development - now open source and available on GitHub.

Developer Eksponent | September 2013 - April 2015

Projects included a large site upgrade from Sitecore 6 to 7, and a large media site built on ASP.NET MVC, integrated with several data providers and funnelling data into a responsive, JavaScript based front end. Also worked on developing internal tools including a bot for HipChat that provides integration with the project planning system.

Sitecore Developer GF Forsikring | December 2012 - August 2013

Refactored the entire codebase for two separate solutions running on different versions of Sitecore into a unified solution, running on Sitecore 6.5, with a more clearly defined and logical structure. Involved in the implementation of TFS from the development team. Developed several landing pages and other smaller projects.

Developer Cabana | August 2011 - December 2012

Worked on a variety of new or existing Sitecore solutions, often in collaboration with other developers. Gained comprehensive knowledge of Sitecore and experience using a variety of technologies to meet goals across a range of scenarios within stringent deadlines.

International CRM Developer FOSS | October 2007 - August 2011

Responsible for development of FOSS’s CRM system, including User Interface design and usability assessments. Also developed solutions for integration with both internal and external applications.

Testimonials

Adam is a passionate and skilled developer, who always strives for learning new things and finding better ways of working. I've seen him being a great mentor to those less experienced, as well as being a quick learner himself and appreciating the feedback. Adam has a lot of empathy for his coworkers and he would be a great asset to any team!

Marina Gornostaeva, Lead iOS Developer at Storytel/Mofibo

Adam is a very experienced developer who is passionate about developing good quality software. At Storytel he was very engaged in recruiting and onboarding/mentoring new colleagues, active in the tech community (giving tech talks, writing blog posts) and he enriched our tech stack with new technologies like F#. He is a person with very high integrity and his contributions generally went well beyond what was expected of him.

Daniel Bodner, Head of Technology at Storytel

Adam's unrelenting search for better ways to develop software has pushed the team to the bleeding edge of software development.

David Worthington, Team Lead at 24/7 Entertainment

Other Projects

Farum Gospel

A simple, responsive website built using Umbraco and Bootstrap.

Blog

I occasionally blog about tech related topics.

Emacs Giphy

A small addon for Emacs to generate markdown snippets for gifs - very handy for adding to Pull Request comments!