iOS and Mobile Tech Lead
2021 - PRESENTShackle- Defined and implemented the initial app architecture and framework.
- Grew the iOS team to three people and onboarded them with project architecture.
- Delivered a POC and an MVP on an incredibly tight schedule.
- Guided back-end and Android teams with respect to mobile API definition and implementation details.
- Set up remote logging and observability and assisted with finding bugs in third-party hardware remotely.
- Used and contributed to the back-end and DevSup projects (PostgreSQL, gRPC, Node.js, and Google Cloud).
Technologies: SwiftUI, Model View Viewmodel (MVVM), gRPC, Dependency Injection, CI/CD Pipelines, Swift, UIKit, Unit Testing, Apple Design, MQTTTech Lead/Architect
2017 - 2019fashionTrade (freelance)- Designed and implemented the proof of concept (POC) of fashionTrade's B2B fashion buying and selling app and scaled it up to commercial deployment.
- Built the development team and grew it up to a four-person team that was in charge of screening and selecting candidates.
- Defined the API, guided the back-end development of the API, and built smaller parts of the back end when BE team was time-constrained.
- Assisted the PM in defining the product and was actively contributing features and UX.
- Built automated deployment tools of the app for testing and production, which were used as the basis for the CI pipeline.
Technologies: Xcode, Back-end, Algorithms, Agile, Mobile, Continuous Integration (CI), Cloud Computing, REST, iOS, Swift, APIs, UIKit, Model View Viewmodel (MVVM), Unit Testing, UI Testing, REST APIs, WebSockets, Apple DesignSenior Mobile Engineer Navigation App
2009 - 2017TomTom (freelance)- Improved the iPhone-specific UX and the C++ integration; guided and trained the development team to improve their skills in these fields.
- Did the heavy-lifting for supporting iOS in TomTom's C++ platform; ported all the software to 64 bit when Apple started mandating this.
- Handled the most complex issues found in the field, e.g., when iOS introduced a bug that caused the app to crash after a few hours of use.
- Fixed the Java-inspired basic app architecture, which was not optimal for iOS, saving the team huge amounts of time spent "working against the grain."
- Introduced support for right-to-left (i.e., Arabic) script in the app.
- Contributed to CI, distribution, and other tooling required to maintain and deploy the app.
- Contributed to hiring and screening candidates, interviewing and appraising CVs.
- Contributed to product management and product definition groups.
- Served as the technical point of contact for Apple developer support.
Technologies: Back-end, Agile, iOS, Objective-C, Mobile, Objective-C++, C++, UIKit, Unit Testing, UI Testing, REST APIs, Apple DesignMobile Lead and Architect
2011 - 2013TomTom Taxi (freelance)- Kick-started the mobile app development for TomTom Taxi; took on lead and architect roles until commercial release.
- Worked with the PM to define functionality and UX; implemented initial versions.
- Implemented the POC for the Taxi app running on Android.
- Guided the back-end team in designing and implementing the REST API.
Technologies: Xcode, Back-end, Agile, Mobile, REST, iOS, Objective-C, APIs, UIKit, Unit Testing, REST APIs, Apple DesignTeam Lead, iOS
2009 - 2009Ahold (freelance)- Served as the team lead and architect for the initial launch of the signature app of the Netherlands' largest retailer.
- Helped to define the product's functionality and UX.
- Defined the client-server API from a mobile perspective.
- Contributed to building and scaling up the team (up to 5 devs, screening, interviewing, team organization).
- Contributed to securing the app and the API (passing the external audit on the first attempt).
Technologies: Xcode, Agile, Mobile, Security, REST, Objective-C, iOS, APIs, UIKit, Unit Testing, REST APIsArchitect, Team Lead
2005 - 2009ImBeeld/Cammit (freelance)- Helped the MT to decide between build or buy of a security camera management solution and started the building phase.
- Grew the tech team (+4 people) and trained the team to learn key skills for the project.
- Built and implemented the entire service offering (front end, back end, and mobile).
- Integrated with third-party components (camera API, SMS gateway, and ERP).
- Architected and built streaming pipelines, receiving from the camera and multiplexing the streams to several clients.
- Designed and built a distributed video storage./retrieval/management stack.
- Researched and built an image processing pipeline for motion detection to trigger alarm events for our users.
Technologies: Xcode, Back-end, Algorithms, C++, Perl, Back-end Performance, iOS, Objective-C, Mobile, PostgreSQL, Full-stack, Security, Video Streaming, REST APIsKernel Developer
2004 - 2004TomTom (freelance)- Worked on drivers (USB) and kernel (suspend and resume) for the custom hardware of TomTom's first portable navigation device during its RTM and go-to-market phase.
Technologies: Windows Kernel Drivers, Linux, Kernel, C, C++Development Manager
1999 - 2002Launchalot- Managed the 16 person engineering team that developed licensable cross-platform (Linux, macOS, and Windows) C++ frameworks for rich multimedia rendering and complex UIs, and bespoke solutions built on those frameworks.
- Oversaw the development of the completely automated playout solution for the country's best-ranking FM radio station.
- Maintained the frameworks and radio applications and expanded on them to add digital streaming over the public internet and DVB for broadcast networks (freelance).
- Created an application for automated playout of broadcast music TV, based on QuickTime for video decompression plus rendering to the (Blackmagic) broadcast video hardware, and CoreImage for configurable transitions between clips and adverts (freelance).
- Managed the developer support and documentation team.
Technologies: Algorithms, Objective-C, Performance, Image Processing, Streaming, DVB-S, MPEG, User Interface (UI), C++