My Self

Yohann Martel

Software Engineer

 

Profile

Welcome to something between my personal website and my interactive resume.

Who am I? I'm a software engineer and I'm living in Montreal (Canada). I started coding on a Amstrad CPC 6128 in basic in my childhood and since, I have never stopped. After almost 15 years in software development as work, I've realized that you can't judge a software engineer on his knowledge of a technology, but rather its ability to learn and adapt himself.

My strengths are:

Passionate

Energic

Organized

Team player

What I do? I work at Behaviour Interactive doing whatever I can! I'm technical director for an unannounced project.

Thanking you for your interest in my website or myself, I wish you enjoyable browsing.

 

Yohann Martel

Montreal, Canada
Email: yohann@ymartel.com

Skills

Skills

Technical skills

Software architecture
Game development
Software development (Web, Desktop)
Cloud solution (SaaS, PaaS)
High scalability
Quality management
Automated deployment (CI/CD)

Techno

Technology

3D Engine: Unreal Engine 4, Unity3D
Web/Backend: NodeJs, Go, ASP.NET
Cloud: Amazon AWS, Azure
DB: SQL Server, MySql / MariaDB, SqlLight
Distributed cache: AppFabric, CoucheBase, Redis
NoSql: ElasticSearch, SolR, MongoDB
Desktop: WPF, WinForms

Manage

Project management

Agile methodology: Scrum, Kanban
Requirements, specifications, costing
Project planning, production and monitoring
Risk management
High level scoping

Work

Technical director Current

Behaviour Interactive
Jul 2019 - present

Behaviour Interactive is a leading independant video game developer on PC, console, and mobile.

Unannounced project

  • Team
    • Keep the team up-to-date on industry trends
    • Improve team effectiveness by identifying bottlenecks and implementing solutions
  • Project
    • Define the technological strategy with the development team: pipeline, tools, and key development procedures
    • Define the strategy to monitor quality, performance, and stability
    • Assess technical risk and mitigation plan
    • Oversee technical communication with external parties
    • Evaluate software implementation on design and task thoroughness
    • Define and communicate coding standards
    • Identify reusable code required for our code library and ensures the code is of high quality
    • Manage technical debt ensuring sustainable development
    • Occasionally act as a lead developer, managing teams, tasks and priorities
  • Company
    • Interview candidates for technical positions
    • Responsible for high level scoping and technical staffing
    • Promote and coordinate technical knowledge harvesting within the organization
    • Track and identify new opportunities to improve our methodology and training offerings
Unreal Engine C++ NodeJs Jenkins Docker Perforce Git TeamOf60

Lead game developer

Behaviour Interactive
Oct 2016 - Jun 2019

Deathgarden Polygon review

  • Management
    • Work closely with designers and art leads to understand requirements and translate those to user stories and specifications for engineering
    • Take ownership over engineering scope, planning, and scheduling changes
    • Guide development day-to-day to help developers remain on track and address blocking issues
    • Project management: Project planning, scope planning, resource planning and risk management planning
    • Dev team management: one-on-one, monthly dev meeting, annual review and more
  • Game Development
    • Participate as a senior developer on the team, implementing features and mentoring other developers
    • Engine integration
    • Game servers deployment through amazon gamelift
    • Multiple backend microservices: Metrics, Replay, FileService
    • Consoles PS4/Xbox1: Handle gameflow changes to support authentication, profile, disconnection and controllers
Unreal Engine C++ NodeJs Jenkins Docker Perforce Git TeamOf70

Lead game developer / Senior game developer

Behaviour Interactive
Apr 2014 - Sep 2016

Dead by daylight Gamespot review

  • Game Development
    • Xbox1: Handle B2B requests (with XSTS) for authentication and in-game purchases
Unreal Engine C++ C#

Project Warhammer40k – Eternal Crusade IGN review

  • Management
    • Task specifications and estimations
    • Dispatch the work inside the team backend and console
  • Design and develop online services
    • Restful service in NodeJs
    • Matchmaking and lobby based on redis
    • Account system and game persistence based on MongoDB
    • Business intelligence dashboard based on analytics coming from our game statistics (Elasticsearch)
    • Full environment creation on amazon cloud (EC2 / ECS / Cloudformation)
    • Continuous delivery build thanks to jenkins
    • The fullstack is on Docker
  • Game Development
    • Design and implementation of the game console
    • Gameplay optimization to reduce the network bandwidth
    • Implementation of gamemode and engine modification
    • Xbox1 integration: multiplayer session management, statistics, achievements...
    • PS4 integration: achievements, core affinity, optimization
Unreal Engine C++ NodeJs Python Jenkins Docker Perforce Git ElasticSearch TeamOf40-100

Software Architect / Technical Leader

QXL Ricardo
Dec 2011 - March 2014

QXL Ricardo is based in Sophia-Antipolis France. Ricardo.ch is the 3rd Switzerland website with over 5 million unique visitors per month. (Just after Google and Facebook). The main website is an auction website and operates in Switzerland, Denmark, Norway and Greece.

Creation and development of a new classified platform olx.ch

  • Architecture / technical choices
  • Modern search engine - SolR (NoSQL)
  • High availability / Scalable thanks to Microsoft Azure (PAAS solution)
  • Responsive design - Bootstrap
  • Distributed cache - App Fabric
  • Security - Full HTTPS/ anti forgery token / anti XSS
ASP.Net MVC SolR Azure cloud Amazon SES App Fabric TeamOf7

Stabilization and migration of the website ricardo.ch

  • Platform migration ASP to ASP.Net MVC 3
  • Architecture of the new API solution
  • Correction and stabilization of existing code
  • Establishment of patterns
  • Optimization of cache management
C# ASP.Net MVC nodejs Cache Pattern JQuery Ajax TeamOf9

Improvement of development process

  • Establishing a Framework common to all projects of the company, distributed through a packet manager
  • Implementation of continuous integration
  • Team training on the latest Web and .Net technologies
C# nodejs nuget Continuous integration TFS

Software Architect / Technical Leader

RTE Technologies
Sep 2009 - Nov 2011

RTE Technologies is the leader of the after-sales service in France. (based in Sophia-Antipolis, France)

Creation and development of WPF Smart Client SOLMIS, strategic solution for managing the business of customer service and after-sales service

  • WPF application architecture, implementing the MVVM pattern
  • Specification and development of a "plugin" architecture for the client and SOA for services
  • Development from the UI to unit tests
  • Database design
  • Creating an automated deployment tool for TFS (Using Workflow Foundation)
C# WPF MVVM MEF Entity Framework SQL Server WCF TFS Workflow Foundation JQuery Ajax TeamOf5

Development and maintenance of existing projects

  • Development of a Silverlight application to manage technical documentations
  • Backend done in SOA thanks to WCF
  • Websites development (like vosgaranties.com)
C# WCF ASP.Net SOA Silverlight TeamOf5

.Net Developer

LOGICA
Jul 2007 - Aug 2009

Logica was a multinational IT and management consultancy company. It's now owned by CGI Group and renamed CGI

Development of a management tool for advanced translation at Lionbridge company

  • Architecture and development of the services part (WCF)
  • Development of a security token service to handle authentication
  • UI development in ASP.NET 3.5 / JQuery
  • Development of a form generator thanks to ASP.NET / XML / XSD
C# ASP.Net WCF SOA STS Javascript XML XSD TeamOf7

.Net Developer

SOGETI
Jul 2006 - Jun 2007

Sogeti is an information technology consulting company specializing in local professional services. (based in Sophia-Antipolis, France). I was in sandwich training.

Development of a CMS

  • Pages / Usercontrols development in ASP.NET 1.0 / 2.0
  • Development of a plugin engine in XML
  • Development of Winform tools
C# ASP.Net Winform XML XSD XPATH SQL SERVER TeamOf5

Projects

Open source projects are the best way to get feedback on your work and to improve yourself. Here you can find a partial list of my open project.

Arctic Code Vault Contributor

C++, C#

Contribution in open sources repository: Azure/azure-quickstart-templates, dolphin-emu/dolphin, EIGHTFINITE/dolphin and more!

Know More »

GnGeo-Pi

C, ASM

GnGeo-Pi is a portable NeoGeo emulator optimized for Raspberry Pi.

I fixed some sound issues and it's now used in one of the most known raspberry distribution: Retropie

Know More »

AMF

C#, ASP.Net, JQuery Mobile

ASP.NET Mobile Framework (AMF) was a framework to make web application for most-used tablet and smartphone web browsers.

It's based on Jquery Mobile 1.0 (http://jquerymobile.com) and now, it's completely deprecated :)

Know More »

Education

Fascinated by computers and new technologies, my professional orientation is obvious! My study were done in France.

  • Master Degree in Science Computer

    SUPINFO - 2008

  • Engineering Degree

    SUPINFO - 2008

  • Associate Degree in Science Computer

    ESIG - 2006

About me

Dual nationality

Dual nationality

I'm lucky to be Canadian and French citizen and have access to two awesome cultures.

Skateboarding

My First Post

Passionate about skateboarding, I have been practicing it for over 30 years. During winter, I swap my skateboard against a snowskate. Long time ago, I had my own skateshop!

Humanitarian Mission


In April 2009, I went on a humanitarian mission with the French NGO planete-urgence (www.planete-urgence.org) in Benin during 20 days. The aim was to assist a local NGO protecting an island in the heart of Benin.

The mission was:

  • Discovering the Agonvé Island and taking pictures/videos
  • Training the Beninese NGO CIDEV to create website