iOS Developer2017 - 2017Flightmode
Technologies: React Native, Redux, JS
- Developed a complete iOS application from scratch using React Native and published to the app store. The application provides highly personalized and quality reading content to the users.
- Defined REST API requirements in collaboration with the back-end developer and integrated with the app.
- Built interactive animations using React Native's Animated and PanResponder APIs, resulting in a very fluid user experience.
- Developed higher-order components in React to maximize code reuse for repeating tasks like submitting forms, loading progress, and showing errors.
- Implemented offline interactions and a synchronization service to ensure all data is updated on the back-end.
- Implemented Facebook and Twitter login using OAuth.
Lead Developer2017 - 2017Crypto Plus Certified
Technologies: React, Redux
- Developed an application for algorithmic cryptocurrency trading that tracked market data in real time over web sockets and executed trades as per the trading strategy configuration.
- Refined trading strategy ideas into complete algorithm specifications by identifying and addressing all the scenarios. Implemented and optimized the algorithms further to maximize profits.
- Developed an interface in React.js to visualize the algorithm's performance to speed up algorithm development.
- Finalized the product requirements for the automated trading platform in the form of wireframes and app flow by collaborating with the designer and product owner.
- Defined the tech stack and architecture for the complete platform and set up a team of five developers to implement the project.
iOS Architect2016 - 2017UpGrad
Technologies: Swift, iOS, VIPER, TDD
- Built an iOS sample app using TDD to serve as documentation for coding guidelines to be followed by the team.
- Covered all critical aspects of architecture including network layer abstraction, view modularity, database, navigation, caching, deep-linking, push notifications, dependency management, testing frameworks, test suite speed, and quality.
- Implemented VIPER architecture to maximize testability.
- Implemented continuous integration to ensure stability and high test-coverage in pull requests.
- Integrated Danger and SwiftLint to automate code reviews.
- Developed a network abstraction layer using Moya with stubbed network requests for faster test runs.
- Guided the team in Git branching practices to ensure a smooth workflow.
- Reviewed the code for architectural issues and shared the impact regularly with stakeholders.
Full-stack Developer2016 - 2016Mink
- Developed an end-to-end solution for automating all operations for the laundry business including supply chain management, customer service, payments, and billing.
- Developed finite state machines to track and validate the flow of inventory starting from collecting garments from users, submission to the nearest hub, transporting to vendors for processing based on services required, transporting back to the hub, and finally delivering to the user.
- Developed a web front-end based on ActiveAdmin to be used by all operators to fulfill their respective tasks, which included handling parts of the supply chain, scheduling pickups and drops, verifying the state of inventory, generating invoices, applying discounts, and more.
- Developed a job-based system and an Android app for use in delivery trucks to automate the transportation of inventory on various routes in the supply chain.
- Created a RESTful API in Ruby on Rails with role-based authorization supporting both web and Android clients.
Engineering Manager2015 - 2016TinyOwl/Runnr
Technologies: Java, Kotlin, Android, Objective-C, Swift, iOS, Ruby on Rails
- Refactored pages with complex interactions by introducing functional reactive programming (RxJava, RxSwift).
- Created an MVVM framework for Android based on RxJava and data binding to enable code reuse through view composition.
- Integrated Kotlin for Android development and Swift for iOS to eliminate null pointer exceptions and accelerate development speed through better code reuse.
- Supported internal web panels based on Backbone.js and a back-end based on Ruby on Rails.
- Achieved stable weekly releases to production by bringing into practice feature gating and Agile methodology as a tech lead.
- Restructured the push notification job scheduler used by the marketing team to support sending push notifications to millions of users at a time while eliminating delivery failures and minimizing delay.
- Drove the development of the Magical Fridge product to provide a highly personalized food ordering experience with the vision to display exactly what the user wants.
Mobile Developer2013 - 2015TinyOwl
Technologies: Android, Java, iOS, Objective-C
- Developed food ordering apps on Android and iOS from the ground up.
- Architected core modules, including database access, networking, data sync, navigation, and UI logic.
- Extended GreenDAO ORM to support executing database queries directly from JSON without intermediate conversions, accelerating data insertions by 20x.
- Implemented SyncAdapters to download and refresh restaurant menus offline, to provide a rich offline user experience.
- Designed a highly versatile offer schema capable of storing all variations of restaurant offers (e.g., Buy one large pizza, get 50% off on one medium pizza of lower price). Implemented a client-side offer application based on the downloaded offers to instantly apply an offer or guide the user without making any network calls.
- Integrated multiple payment gateways ranging from internet banking to mobile wallets, providing a seamless online payment experience.
- Developed a post ordering experience to indicate the status of ongoing orders and allow users to take actions such as calling the restaurant, cancelling the order, and providing feedback.
- Developed a real-time inventory tracking system to support restaurants with limited stock.