Mobile Development

Software Engineer - Android Mobile Apps

Amaris - Cityway France / Cityway Canada Inc | January 2016 - March 2017 | Aix-En-Provence, France

Overview

As a Software Engineering consultant at Amaris, I worked with Cityway France and Cityway Canada Inc to develop Android applications for carpooling and multimodal transportation use cases.

Key Responsibilities and Achievements

Mobile Application Development

  • Multiple Android applications development for transportation use cases
  • Developed Triplinx app and its associated flavors (e.g. Moovizy)
  • Developed FleetMe app with multiple flavors for cities such as Beauvais, Avignon and Auxerre. It was then released as Wopé for the city of Le Tampon/Saint Pierre, Réunion

Application Portfolio

Triplinx icon

Triplinx

Trip planning application for the Greater Toronto and Hamilton Area

Triplinx screenshot 1 Triplinx screenshot 2 Triplinx screenshot 3 Triplinx screenshot 4 Triplinx screenshot 5 Triplinx screenshot 6

Features: Multi-modal trip planning, real-time transit information, route optimization


Moovizy icon

Moovizy

Get it on Google Play

Mutimodal transportation application (Triplinx flavor)

Moovizy screenshot 1 Moovizy screenshot 2 Moovizy screenshot 3 Moovizy screenshot 4

Features: Multi-modal trip planning, real-time transit information, route optimization


FleetMe/Wopé Passenger icon

FleetMe/Wopé Passenger

Get it on Google Play

Fleet management and carpooling system - Passenger App

FleetMe/Wopé Passenger screenshot 1 FleetMe/Wopé Passenger screenshot 2 FleetMe/Wopé Passenger screenshot 3 FleetMe/Wopé Passenger screenshot 4
FleetMe/Wopé Driver icon

FleetMe/Wopé Driver

Get it on Google Play

Fleet management and carpooling system - Driver App

FleetMe/Wopé Driver screenshot 1 FleetMe/Wopé Driver screenshot 2 FleetMe/Wopé Driver screenshot 3

Features: Fleet tracking, passenger management, carpooling

Architecture and Development

  • Used scalable architectures for transportation applications
  • Implemented clean separation between UI, business logic and data
  • Architecture and skeleton code generation on presentation and backend layers in python

Mapping Solutions

  • Design and implementation of an Android library wrapping multiple Android Maps APIs
  • Created unified mapping interface for different map providers
  • Simplified map integration across multiple applications

Technical Stack

  • Platform: Android Mobile
  • Languages: Java, Python
  • Frameworks & Libraries: Android SDK, Dagger, Butterknife, Retrofit, SignalR
  • Mapping: Google Maps API, Mapbox APIs
  • Architecture: Clean Architecture, MVP
  • Tools: Android Studio, Git, Jenkins

Challenges and Solutions

Challenge

Developing applications for diverse transportation use cases

Solution

Created modular architectures that could be adapted to different scenarios

Challenge

Integrating multiple mapping APIs with consistent behavior

Solution

Developed abstraction layer that normalized different map provider APIs

Challenge

Ensuring real-time performance for trip planning applications

Solution

Implemented efficient algorithms and caching strategies for route calculations

Impact

  • Delivered multiple successful transportation applications to market
  • Improved urban mobility through better carpooling and trip planning tools
  • Created reusable components that accelerated development of future applications
  • Contributed to reduced traffic congestion through better transportation solutions