• Unity 3D mobile game developer.
• Extensive Scala and Java experience for enterprise applications.
• Proficient in the design and development of web applications, client-server communications, and distributed systems.
• Bachelor of Science Degree, Major in Computer Science, Minor in Business.
Technical Experience:
• Primary Languages: Scala, Akka, Java, C#, JSON
• Secondary Languages: Javascript, Python, Groovy, HTML, XML
• Cloud Platforms: Google AppEngine, Amazon Web Services (AWS)
• Databases: MongoDB, Memcached, Google Datastore, PostgreSQL, SQL Server, IBM DB2, Riak, Redis
• Tools and Software: Git, Subversion, Jenkins, Vagrant, Ansible, Chef, RabbitMQ, ØMQ
• Operating Systems: Mac OS X, Unix, Linux
Specialties:
Enterprise Java and Scala application development.
Web services and distributed applications.
Unity 3D game development.
Senior Software Engineer @ From October 2015 to Present (2 months) Founder @ Solfire Software is a development studio that creates mobile games and business applications.
The third quarter of 2015 will see the launch of our first title, Triple Blackjack, a mobile card game.
Our development process involves rapid prototyping, agile practices, and continuous usability testing with new users. We pay close attention to detail, and take pride in our work.
Technologies used: Unity, C# From April 2015 to Present (8 months) Senior Software Engineer @ DeNA is a top 20 globally ranking publicly traded social gaming company. The Vancouver office had released games such as Transformers Battle Tactics, G.I.Joe: BattleGround and NFL Matchups.
Each development team I had worked with used agile principles. These included daily scrums, sprint planning, and retrospectives.
In my adventures at DeNA, I had many roles, including:
• Finalizing one-click deployment and configuration strategy using Chef and OpsWorks on AWS for a Java-Play web service.
• Substantial refactoring of a legacy system to support unit testing and extension for new in-game player skills.
• OAuth 1 and 2 integration on Python GAE server and Unity game client.
• Mobage Bank integration on Python GAE server and Unity game client.
• Bank integration on Node.js server and Unity game client.
Technologies used: Java, Play Framework, JSON, MongoDB, Memcached, Chef, Vagrant, Jenkins, Amazon Web Services (AWS), OpsWorks, Python with Google AppEngine (GAE), and Node.js From September 2013 to April 2015 (1 year 8 months) Software Engineer @ HootSuite is a leader in social media management, providing mobile and web applications for managing social profiles and content.
The development team I worked with used agile principles, including daily scrums and frequent automated deployment.
• At HootSuite my responsibilities to analyse business requirements and handle the architectural design and development of real-time, event-based, large scale systems. I had worked primarily on the real time Conversations messaging service, and the automated deployment of our services. Projects involved RabbitMQ and ØMQ messaging, Memcached and Mongodb data storage, Ansible auto-deployment, and the occasional Netty REST api.
Technologies used were Scala, Akka, SBT, JSON, MongoDB, Netty, Memcached, Ansible, Vagrant, Jenkins, RabbitMQ, ØMQ From April 2012 to August 2013 (1 year 5 months) Vancouver, Canada AreaSoftware Developer @ Nzone Media was a software provider to one of the largest online gambling sites in the world.
The company focused on an e-commerce platform, customer relationship management (CRM) applications used by hundreds of employees, and a real-time customer bonus program.
The development team embraced an Agile approach, including daily scrums, iterative release planning, and retrospectives. We used Extreme Programming (XP) practices, such as paired programming, when dealing with more complex problems.
• At Nzone my responsibilities included analysis of business requirements and software development. I worked primarily on the CRM web application, bonus system, and e-commerce platform. Projects involved RESTful web services and clients, ESB messaging, and connectivity to multiple databases.
Technologies used were Java, Spring MVC, Hibernate, Jersey, XML, JSON, DB2, HTML, and Javascript. From January 2010 to April 2012 (2 years 4 months) Vancouver, Canada AreaSoftware Developer @ A software development company that builds large-scale technology solutions for international agencies, gaming affiliates, and health sciences associations.
• Acted as analyst, project lead, architect, programmer, and tester for various projects and clients.
• Managed complex software projects in an agile development environment through XP and Scrum principles. Paired with other developers for knowledge sharing.
• Successfully crafted applications that handled data persistence, push and pull data feeds, admin portals for data feed tracking and modification.
• Applied Test-Driven development techniques through multiple tiers of testing: unit, integration, and functional.
• Collaborated on open source software projects used for code scaffolding and prototyping, semantic data trending and visualization leveraging Google APIs, Virtuoso, JSON, RDF and OWL.
• Responsible for providing offshore developer mentoring and training through video conferencing and screen sharing.
Technologies used: Java, Hibernate, PostgreSQL, Groovy/Grails, and SpringMVC. Front end web-app components using Javascript libraries such as ExtJs and jQuery. From May 2006 to December 2009 (3 years 8 months) Vancouver, Canada AreaSoftware Developer @ EISI, now Zywave, is a leading software developer for the financial planning industry, servicing over 250,000 financial professionals in North America.
• Duties were primarily analyzing business requirements, and developing complex financial reports.
• Overhauled financial calculations for a major client, by repairing and restructuring an inconsistent code base using an Object-Oriented paradigm.
• Researched and developed alternative strategies to accurately solve application defects and limitations.
• Performed code reviews of completed work for colleagues.
• Wrote unit tests, documented solutions and provided QA testing procedures.
• Planned future releases and further changes for the reports, through requirements and technical design documents. From March 2005 to February 2006 (1 year) Winnipeg, Canada AreaApplication Developer @ The Bio-Informatics department provides customized technology solutions to Genome Canada through funded initiatives in Human Health. This contracted project involved rebuilding a legacy application that assisted with genome analysis on DNA and protein sequence data.
Contract position.
• Spearheaded the UI design, which involved reverse-engineering the legacy application, and creating a menu file parser.
• Developed and maintained the application using a Model-View-Controller (MVC) design.
• Conducted thorough unit and overall testing of application development.
• Lead client meetings, and requirement gathering.
• Adapted the project timeline to account for continuously changing requirements.
• Completed the contracted phase of the development cycle on time and under budget. From 2005 to 2005 (less than a year)
BSc., Computer Science, Business @ University of Manitoba From 1999 to 2004 Glenlawn Collegiate Garrett Eidsvig is skilled in: Java, Agile Methodologies, JavaScript, Subversion, REST, Scala, Akka, Groovy, Spring, Ansible, Vagrant, Memcached, MongoDB, Hibernate, PostgreSQL
Websites:
http://www.solfiresoftware.com