Welcome to Aasmund Eldhuset's home page! Contained herein is a summary of my career as a programmer and general geek.

(Velkommen til Åsmund Eldhuset sin hjemmeside!)

Quick facts

Nationality:Norwegian — the native spelling of my name is Åsmund Eldhuset
Occupation:Computer programmer
Current residence:San Francisco Bay Area, California, USA
Languages:Norwegian (mother tongue), English (fluent), French (basic)
Year of birth:1985
Resume:Compact PDF resume (this web page is the extended version)

Technologies

While I consider myself to be a generalist and a full-stack developer, I am biased towards back end and lower-level technologies. I have a solid algorithms background, I am very fascinated by language theory and compilers, and I am capable of studying decompiled assembly code and heap dumps in order to trace mysterious bugs or memory leaks.

I am a proponent of using whichever tool is the most well-suited for the task at hand, and I pick up new technologies and languages very quickly. Therefore, I do not believe myself or other people to be limited to whatever one's current skillset is. However, below is an executive summary of my current skills. I consider myself highly skilled in the items in italic, while my knowledge of the other items is more varied (and listed in descending order of skill level).

Programming languages:C# 5, Java 8, C++, C, Python, JavaScript, Go, Matlab, Fortran, Lisp, various assembly languages
Database engines:MS SQL Server, PostgreSQL
Source control:git, Mercurial, TFS, SVN
Selected frameworks/APIs:ASP.NET MVC 5, Entity Framework 6, jQuery, NUnit, JUnit, Moq, Unity

Teaching and public speaking

I love to teach, and I am interested in taking teaching assignments and giving presentations — please contact me if you would like me to speak or teach somewhere. However, due to the nature of my visa, I must do this for free, so I will only consider assignments that I find particularly interesting.

I have been a Teaching Assistant in several university courses for nearly a decade, giving weekly repetition lectures. I have also, on occasion, given the main lectures. Below is a summary of my teaching experience.

While I lived in Trondheim, I would usually give unofficial repetition lectures in these and other subjects (including physics, calculus, and programming in Java, Python, and Matlab), typically attended by hundreds of students. I have also spoken at various meetups and been a mentor in children's programming classes.

Work experience

(References are available upon request.)

Medallia, Inc (USA)

Duration:October 2014–present
Title:Senior Software Engineer

Medallia aims to help other companies being loved by their customers. We provide a software system for Operational Customer Experience Management, which aggregates and analyzes customer satisfaction data in real time to provide clients with insights as to what their customers think about them and how they need to improve.

I am currently a member of the Cloud Fabric team. We are creating Medallia's next generation architecture and infrastructure, using technologies such as Aurora, Mesos, ZooKeeper, Kafka, and Docker. I have primarily been developing a deployer that runs on top of Aurora, and I have also made modifications to Docker in order to support the distributed filesystem Ceph.

Prior to that, I was a member of the External Services team, which owns the integration functionality of the Medallia system. I primarily worked with our configurable data import component, performing bugfixes, performance bottleneck analysis, and developing some new features. This also involved the operational aspect of being on call 24/7 every sixth week.

In both teams, the programming language is Java 8, and the database engine is PostgreSQL 9.4.

Bekk Consulting AS (Norway)

Duration:August 2009–September 2014
Title:Senior Consultant (since January 2012; previously Consultant)

Bekk is a Norwegian consulting company that performs software development, service design, and strategic advisory for companies and organizations in both the private and public sector. I have participated in a multitude of projects, doing full-stack web development with a focus on backend systems, primarily with C# and MS SQL Server.

Projects for Bekk (click to show)(click to hide)

Due to confidentiality agreements, the actual client names are replaced by generic terms, and the project descriptions are intentionally vague in order to avoid identification of the client. All clients are Norwegian unless otherwise indicated. Most of the listed projects have been performed in teams of sizes between 2 and 6 developers.


Client:Government directorate
Project:Developing a web application where the directorate can import documents that are to be sent to public hearing. The public may then submit their opinion on the hearing documents, and the directorate may subsequently view the responses and make statics and reports on them.
Technologies:C# 4.0, ASP.NET MVC 5, Entity Framework 6, JavaScript, jQuery
Duration:February 2014–September 2014

Client:Automation engineering company
Project:Developing a web-based control panel for an industrial automation system. The back end interprets configuration files that describe floor plans and schematics of industrial plants or buildings. The front end shows graphical representations of these together with real-time values from various sensors, and also allows the user to control the system. The application communicates with a third-party system that interacts with the hardware components. The application also executes scripts that are defined in a custom programming language.
Technologies:C# 4.0, Silverlight 5, NUnit, MSTest, AgUnit, SQL Server 2008, git
Duration:September 2012–January 2014

Client:Government directorate
Project:A web application where anyone may alert the government about criticizable conditions at their own or others' workplace, and where the Directorate can process the complaints internally.
Technologies:ASP.NET MVC 3, C# 4, SQL Server 2008, NHibernate, StructureMap, ePhorte, NUnit, WatiN, Moq
Duration:June 2012–November 2012

Client:Financial services company
Project:Developing the back end of a system for credit accounts for payment of utility bills. The back end integrates with a CMS, a credit rating agency, a rule engine, and a data warehouse; it also processes and generates files that describe banking transactions.
Technologies:C# 4, Windows Communication Foundation, MSTest, ASP.NET MVC 3, InRule, Oracle, BizTalk
Duration:October 2011–June 2012

Client:Insurance company
Project:Developing a mobile-adapted HTML5 front end (atop an existing back end) for submitting simplified insurance claims.
Technologies:JavaScript, jQuery, HTML 5, CSS, FuncUnit, git
Duration:August 2011–November 2011

Client:Postal service
Project:Mobile app for tracking packages.
Technologies:Windows Phone 7
Duration:August 2011–September 2011

Client:Automation engineering company (same as above)
Project:Developing Silverlight components for the control panel application of an industrial automation system.
Technologies:C# 4.0, Silverlight
Duration:July 2011–September 2011

Client:Health services provider
Project:Developing two web services for the national health network: One that will distribute personal information from the Norwegian Register of Residence to authorized health institutions, and one that will generate and track temporary identification numbers for patients that cannot be immediately identified.
Technologies:C# 4.0, WCF, NServiceBus, CQRS, SQL Server 2008, Mindscape LightSpeed, NUnit, Visual Studio 2010, ReSharper, Health Level 7, Git, TeamCity
Duration:October 2010–July 2011

Client:Government directorate
Project:Developing a web application for managing applications for government subsidies, allocating the subsidies, and follow-up and reporting about the payments. The system integrates with several internal and national systems, and handles the payment of 4.7 billion NOK.
Technologies:ASP.NET MVC 2, C# 4.0, jQuery, JavaScript, NUnit, Cucumber, Entity Framework 4, MS SQL Server 2008, SpecFlow, Git, TeamCity
Duration:February 2010–October 2010

Client:Government directorate
Project:Maintaining a web application where the public may find information on wait times and patient satisfaction for various medical treatments.
Technologies:C# 4.0, ASP.NET, MS SQL Server, jQuery, Windows Communication Foundation
Duration:January 2010–February 2010

Client:(Internal BEKK project)
Project:Developing a web application for managing the job application process.
Technologies:Ruby on Rails, jQuery
Duration:November 2009–December 2009

Client:International engineering company
Project:Developing an internal social portal that integrates information about employees from various sources.
Technologies:C#, SharePoint 2007, MS SQL Server 2008, JavaScript, AD Lightweight Directory Services
Duration:September 2009–November 2009

Internships (click to show)(click to hide)


Company:Medallia Nordic (Oslo, Norway)
Project:Developing a system for visualization of statistical data.
Technologies:Java, Adobe Flex
Duration:Summer of 2008

Company:Microsoft (Redmond, Washington, USA)
Project:Developing GUI components for an educational software package.
Technologies:C#, Windows Presentation Foundation
Duration:Summer of 2007

Company:Fast Search & Transfer (Oslo, Norway)
Project:FAST (now a Microsoft subsidiary) used to develop a search engine that companies could use to index and search their company-internal documents. During my internship, I developed a monitoring component for the search engine.
Technologies:Java
Duration:Summer of 2006

Company:Skogforsk (Ås, Norway)
Project:Skogforsk is a Norwegian institute for forest research (it was integrated into the Norwegian Institute for Bioeconomic Research in 2015). I interned at the systems administration; my responsibilities included computer maintainance and some user support. I also wrote a small application for collecting user feedback.
Technologies:Windows XP, Visual Basic
Duration:Summers of 2002–2004

Education

Degree: Master of Technology in Computer Science (Sivilingeniør i datateknikk)
Specialization: Complex computer systems (Komplekse datasystemer)
University: Norwegian University of Science and Technology (Norsk Teknisk-Naturvitenskapelige Universitet / NTNU)
Duration: August 2004–July 2009
Thesis: "Linear programming on the Cell/BE" (ECTS grade: A)
Grade average: 4.3 (ECTS scale: A = 5, E = 1)
Awards: - Norwegian IT Student of the Year (Universum Awards), 2008
- I delivered my class' graduation speech in 2009

Transcript of records is available on request.

Organizations and volunteer work

I am an active participant on StackOverflow (as of December 15, 2015, I was ranked #3007 out of nearly five million members):

profile for Aasmund Eldhuset at Stack Overflow, Q&A for professional and enthusiast programmers

I have made some minor contributions to open-source software, as can be seen on my GitHub profile.

When it comes to more traditional volunteering, I am or have been involved with the following organizations (click to show)(click to hide):


Organization:UKA
Description:UKA ("The WEEK") is Norway's largest culture festival. It is organized every second year by around 1500 volunteer students in Trondheim. I am a part of the Lysreklamen group, which creates a huge billboard with the festival's name (which changes every year) that is mounted atop the main entrance of the Student Society. This involves both programming (my primary responsibility), electronics, and carpentry.
Duration:2011–2015

Organization:Norwegian Olympiad in Informatics (Norsk informatikkolympiade / NIO)
Description:NIO is a national programming contest for high school students, where the winners qualify for the International Olympiad in Informatics. I competed myself in high school (best result: bronze medal (116. place out of 265 contestants) in the IOI in 2003; I was also the first Norwegian to ever achieve a perfect score on a task), and subsequently joined the staff. I have at various times been (co)responsible for task writing, grading, accounting, writing and configuring contest software, and physically organizing the on-site finals.
Duration:2004–present

Organization:Academic Radio Club (Akademisk Radioklubb / ARK)
Description:ARK is a club for HAM radio operators, hobbyist electronics enthusiasts, and geeks in general. I have a Norwegian HAM radio license; my call sign is LA9BRA.
Duration:2008–present

Organization:Abakus
Description:Abakus is the student union for the Computer Science and Communication Technology programmes at NTNU. I worked in the Web Committee (webkom), which developed the union's web page. Technologies: Java, Hibernate, PostgreSQL, Spring.
Duration:2005–2009

Organization:CyberCamp
Description:CyberCamp was a computer summer camp for high school students. I participated myself in 2003 and 2004, and joined the organizers afterwards. I've been (co)responsible for both planning and executing the camp, and I've been the group leader for the algorithms group.
Duration:2005–2009

Organization:Norwegian Guide and Scout Association (Norges Speiderforbund / NSF)
Description:During my time as a Scout, I got an early exposure to outdoor life and leadership.
Duration:1996–2009

Personal interests

Contact and recruiting

My email address can be obtained by concatenating my first and last name with a dot in-between, and appending (sorry for the inconvenience, but plaintext email addresses on the internet are bound to get harvested by spammers — so please do not put my email address anywhere on the public internet).

I try to limit my social network connections to people I actually know. Please add me on Facebook only if you know me in person and would consider me a friend in real life. If you are a student at NTNU and are interested in my lectures (which are unfortunately rather infrequent now that I no longer live in Norway), you are welcome to follow my Facebook page. Please add me on LinkedIn only if you know me in person or if there is a business reason other than recruiting that we should connect. If you have a job proposition, feel free to send me a LinkedIn message or an email, but please refrain from adding me as a contact.

I am currently enjoying my time at Medallia, and will most likely only consider job opportunities within the fields of healthcare software or education software (the direction in which I eventually want to move). I am in the U.S. on an H-1B visa that lasts until September 2017 (and may subsequently be extended for one year up to three times). If I am to change jobs, my new employer must petition and pay for an H-1B transfer.