From 0 to 1, from the idea to the actual product being used by customers in restaurants, bakeries, etc. Our product help restaurant owners handle the peak hour's rush, by providing their customers with a mobile app to buy their meals and collect them by themselves at the store's location.
The prices are the same in the stores, the app helps restaurants predicts demande, handle peak hour's tra c and other features, like mobile payments, customers retention, etc.
The infrastructure is based on Kubernetes and Google Cloud, (we are moving to AWS) with micro- services.
Infra: Docker, k8s, S3, gitlab CI, automated SSL, Load balancer for the web apps and API Backend: Python, ask, Mongo, Redis, Node.js, Typescript, Pandas
Frontend: React, redux, saga, redux-sauce, redux-persist, immutable
Mobile: React native, redux, saga, redux-sauce, redux-persist, immutable
We moved to AWS, Lambda, DynamoDB, APIGateWay, Step Functions, VPC, SNS, SQS Serverless and Event based architecture.
- 60% of the code is shared between the mobile apps and the web app. - 99% of the code is shared between the iOS and Android.
4 applications (2 for customers and 2 for restaurant owners) The native mobile apps have couple of features builtin:
- Event tracking for analytics / Segment.io
- Crash tracking
- Lottie Animations
- Login with a phone number, using Twilio for veri cation.
- Live updates using code-push without going through Apple store and Play store. - Mobile payment using Stripe and Card.io
- Payment support: Visa, Mastercard, WeChat and Alipay, Cash, etc. - Noti cations, for Android Firebase messaging, for iOS APN
- i18n currently Fr, En, Cn
- Recommandation engine using Python in the backend - 3D touch support and Quick Action for android
- TouchID for both Android and iOS for better security
- QR Code scanner for quick access
- Fully scalable code base
- 80% test coverage for the sagas
- Reactotron for testing and debug
- Bluetooth connection for printers (ESC/POS) - on iOS hando and Web site app association - Deep linking for iOS and Android
Software engineer manager, my main responsibilities are:
- Managing our Team of developers and data scientists.
- Administer support for Business Development (Product design and development) and help translation of business requirements into technical needs and actions.
- Support to recruit engineering personnel, technical sta ff and project teams formation.
- Put Structure and best practices to deliver our SaaS products (Scrum, Jira, bitbucket, CD / CI, unit tests, E2E tests, documentations, etc.)
- Design, execute, utilize and maintain software engineering applications.
- I also have my own code contribution
Technology stack: Python, Node.js, typescript, react / react native / angular2+, AWS, GCE, Kubernetes, MongoDB, Cassandra, Docker, Celery, Elasticsearch, Bigquery, Datastore, Functions, etc.
Tools: Jira, Bitbucket, Git, Pipelines (CD/CI)
Methodology: Continuos deployment, Continuos Integration, Scrum