Yasser Aboudkhil, Software Developer in New York, United States
Yasser Aboudkhil

Software Developer in New York, United States

Member since January 27, 2023
Yasser is an entrepreneur who navigated three startups in various fintech growth stages (seed to post-Series B). He is an expert in architecting distributed systems and helping clients pay down technical debt while scaling their businesses. At Microsoft, Yasser shipped software to millions of users, contributed to their Computer Vision-based ImageReco on the Photos app, and developed an NLP language model for the Windows 8 soft keyboard. His roles have included CTO, CEO, and software engineer.
Yasser is now available for hire

Portfolio

  • TSLC
    Go, Gorm, Apache Kafka, Elasticsearch, Redis, Amazon DynamoDB, Cassandra...
  • SensFi
    Go, ScyllaDB, Elasticsearch, Protobuf, Apache Kafka, Logstash, Kibana, Redis...
  • Wahed Inc (Wahedinvest)
    Go, Elasticsearch, Logstash, Kibana, Apache Kafka, GraphQL, Protobuf, gRPC...

Experience

Location

New York, United States

Availability

Part-time

Preferred Environment

Go, Apache Kafka, Elasticsearch, Amazon DynamoDB, gRPC, Protobuf, GraphQL, REST, Redis, Distributed Systems

The most amazing...

...fintech distributed system I've built supported multiple financial services such as wealth robo-advisor, digital banking, and insurtech.

Employment

  • CTO

    2021 - 2022
    TSLC
    • Shipped and centralized core APIs and SDKs across ventures to aid international expansion, similar to a Delivery Hero model.
    • Consolidated the venture builder's IP around ML-driven creditworthiness and scoring using alternative data and rendered the IP consumable by all of the ventures in the venture builder’s network.
    • Implemented Domain Driven Design (DDD) approach to architecture and, consequently, agile team structure. As a result, all systems implemented were pure distributed systems based on event-driven architecture.
    • Created the analytics and data engineering pipelines consumed by the growth and product teams and the creditworthiness team for the ML training model.
    • Grew the engineering team to a 40+ headcount by hiring and changing the interview process to be a more methodical and rigorous academic interview process, streamlining the hiring of high-quality engineers.
    • Implemented agile teams and software delivery process restructured into domain-based teams with bounded contexts. Streamlined an embedded lending product launch with local partners in the UAE, Mexico, Colombia, Bangladesh, and Brazil within 12 months.
    • Established domain-based OKRs for the engineering team by working closely with the product team and aligning to the product roadmap strategically. This empowered every team to naturally 'look around the corner.
    • Created the engineering competency matrix to objectively calibrate engineers into different levels of seniority for both ICs and engineering managers. Defined seniority levels, key areas aligned with company values, attributes, and competencies.
    • Enhanced the performance review process by implementing a quarterly check-in and connect program and open 360-degree feedback. Managers were encouraged to be more methodical in their approach to their weekly one-on-ones.
    • Developed a structured process around performing technical due diligence on external API vendor integration, product know-how, engineering best practices, and processes (OpenAPI AsyncAPI documentation and code-review).
    Technologies: Go, Gorm, Apache Kafka, Elasticsearch, Redis, Amazon DynamoDB, Cassandra, Apache Cassandra, Kubernetes, Amazon EKS, Argo CD, Flutter, GraphQL, gRPC, Protobuf, GitHub API, GitOps, GitHub, Amazon Simple Email Service (SES), Twilio API, Distributed Architecture, Distributed Systems, Clean Architecture, OAuth 2, APIs, Microservices, Microservices Architecture, Amazon Web Services (AWS)
  • Founder, CEO

    2020 - 2021
    SensFi
    • Established and incorporated SensFi Inc. as the first true open finance API for businesses in Africa and the Middle East.
    • Implemented multiple bank integrations, which leveraged custom automated scraping and indexed user banking data into our finance store.
    • Extracted company inventory, receivables and payables, and any other data points available in a given ERP business integration. Implemented multiple ERP integrations.
    • Hired the team which leveraged the data extracted from business banking integrations and ERP integrations to reconstruct a given business' financial statements such as balance sheets and income statements.
    • Implemented the initial GraphQL layer for other financial institutions to integrate their back-office and compliance tooling to our Data API so that they could automate their flagging and risk processes.
    Technologies: Go, ScyllaDB, Elasticsearch, Protobuf, Apache Kafka, Logstash, Kibana, Redis, Kubernetes, GitOps, Argo CD, GitHub, GraphQL, OAuth 2, Distributed Architecture, Distributed Systems, Clean Architecture, APIs, Microservices, Microservices Architecture, Amazon Web Services (AWS)
  • CTO

    2017 - 2020
    Wahed Inc (Wahedinvest)
    • Built an event-driven microservice architecture that is distributed, concurrent, and highly available with a GraphQL API interface for internal and external consumption.
    • Architected and designed a fully distributed system using DDD, resulting in an event-driven architecture.
    • Built resilient services by implementing a Dead Letter Queue and a RetryEvent service which all consumed and retried events on our event bus (Kafka) achieved self-healing and auto-reconciliation mechanisms to recover from issues automatically.
    • Deployed to a Kubernetes orchestrated cluster in production, managing over 100 microservice instances.
    • Grew the engineering team from zero to 19 when I introduced the company to a rigorous academic interview process and loop.
    • Built the blueprint for launching Wahed’s robo-advisor in new jurisdictions from a product offering side, seeing efficient AUM generation in new jurisdictions.
    • Created the underlying processes for the back-office operations related to Wahed’s global robo advisor offering (132 countries), acting as the unofficial head of operations for non-US offerings.
    • Created the roadmap for Wahed to scale staffing globally.
    • Served as the only C-level from all management other than the founder, who actively participated in the board meetings to represent technology, product, and operations for the Wahed board.
    Technologies: Go, Elasticsearch, Logstash, Kibana, Apache Kafka, GraphQL, Protobuf, gRPC, Java, Scala, React Native, React, TypeScript, PostgreSQL, Redis, Cassandra, Apache Cassandra, CircleCI, GitHub, Kubernetes, Kubernetes Operations (Kops), Spinnaker, Distributed Architecture, Distributed Systems, Clean Architecture, OAuth 2, APIs, Microservices, Microservices Architecture, Amazon Web Services (AWS)
  • Software Engineer

    2014 - 2017
    Microsoft
    • Shipped several Windows operating system versions, and worked across the Windows stack.
    • Contributed to and shipped multiple versions of Microsoft's Computer Vision-based ImageReco on the Photos app in collaboration with Microsoft Research. This resulted in higher app ratings and orders of magnitude of app users across the Windows ecosystem.
    • Refactored and rewrote parts of the Windows file indexer to increase speed and accurately coalesced file modification notifications resulting in 30x faster file indexing and precise file modification API notifications for consumer apps.
    Technologies: C++, C#, Machine Learning, Computer Vision, Caffe, Deep Learning, Convolutional Neural Networks, Kernel Programming, Multithreading, Clean Architecture, APIs, Microservices, Microservices Architecture
  • Software Engineer (intern)

    2013 - 2013
    Microsoft
    • Developed an NLP (Natural Language Processing) language model for the Windows 8 soft keyboard.
    • Implemented a machine translation layer on top of the NLP model I created to aid in language modeling and text prediction in the Windows 8 soft keyboard.
    • Ported my NLP and machine translation language model and text prediction to the WIndows 8 Mobile keyboard.
    Technologies: C++, C#
  • Software Engineer (intern)

    2012 - 2012
    Microsoft
    • Ported a legacy version of a Windows handwriting recognition library to the Modern Windows 8 stack such that sandboxed apps could consume it.
    • Extended the port of the Windows handwriting recognition library by implementing support for recognizing mathematical expressions (introductory algebra and some calculus).
    • Utilized the port and my own extension on top and shipped a consumer app within the Windows ecosystem, allowing users to handwrite mathematical expressions and automatically solve them (MathSolver).
    Technologies: C++, C#
  • Java Software Developer

    2011 - 2012
    IntelTraff
    • Implemented a simulator for automating the generation of internet browsing and packet data.
    • Designed and implemented a pipeline for packet data collection to supply network flow stats as training data for performing VPN detection.
    • Exposed and maintained a REST API interface for triggering simulation of packet data generation as well as performing prediction for VPN detection.
    Technologies: Java, APIs
  • Java Developer

    2010 - 2011
    TapiCal
    • Served as a Java developer for an early-stage startup creating a calendar sharing app for iCalendar, using Amazon SQS and JAMES mail server.
    • Implemented the first pipeline for extracting calendar data, transforming it, and pushing it onto SQS for downstream services to pick up.
    • Implemented one of the downstream services for handling the calendar email distribution flow, such that all participants in the calendar invite received an email notification.
    Technologies: Java, Amazon Simple Queue Service (SQS), Apache James Server, Objective-C, APIs

Experience

  • Remote Envelope Encryption Dictionary Service

    This is a simple gRPC service written in Go (Golang) which uses AWS KMS service to encrypt and decrypt whatever content you send. To make itself useful as a service for handling PII, it also acts as a dictionary of sorts for sensitive data. Essentially, consuming services will call it to encrypt a piece of data, and it will store sufficient unidentifiable metadata for performing decryption at a later stage when requested.

    It uses AWS KMS but employs the envelope encryption technique recommended by Amazon to keep sensitive data encrypted and not rely on a central encryption key. This helps avoid storing the plain version of the encryption keys used (in case of a leak).

    This service is strongly opinionated because it limits the radius of key exposure by enforcing a new encryption key per data entry encryption request. It is also opinionated due to the use of AWS KMS.

    After creating this service, it has been key for my usage across many projects that I've worked on in the past, as it rendered the handling of PII (personally identifiable information) trivial and got the job done from a compliance perspective.

  • Financial Operating System (Fully Distributed System Fintech OS)
    https://www.wahed.com

    I designed, architected, and implemented a fintech operating system supporting robo-advisory, wealth management, digital banking, retail stock screening, trading services, and insurance and inheritance management.

    The tech architecture is microservice-based. I built a set of microservices out of every specialized task (whether it is to perform sign-up and login authentication, KYC, funding, information retrieval or financial instrument information lookups, etc.). Wahed's backend is purely event-sourced, allowing all of its microservices to be asynchronous in nature. The services in the platform do not share any state and keep no session data, which makes it very easy and safe to scale the services independently and to recover from any system failures. Since Wahed’s microservice-based architecture doesn't rely on a single service but a set of them, it helps remove bottlenecks, as computationally consuming services are autoscaled.

    The majority of the back-end services are created using Go, a proven, very mature language for creating rich and highly concurrent applications. It provides a robust, highly scalable, and very secure environment to create enterprise-grade server applications.

Skills

  • Languages

    Go, GraphQL, C++, Java, C#, Python, OCaml, Scala, TypeScript, Objective-C
  • Frameworks

    gRPC, OAuth 2, Gorm, Flutter, React Native, Caffe
  • Libraries/APIs

    Protobuf, Twilio API, GitHub API, React
  • Tools

    Amazon EKS, Amazon Simple Email Service (SES), Logstash, Kibana, CircleCI, Amazon Simple Queue Service (SQS), GitHub
  • Paradigms

    REST, Clean Architecture, Microservices, Microservices Architecture, Compiler Design, Functional Programming
  • Platforms

    Apache Kafka, Kubernetes, Spinnaker, Amazon Web Services (AWS), Kernel Programming
  • Storage

    Database Architecture, Elasticsearch, Redis, Amazon DynamoDB, Cassandra, ScyllaDB, Databases, PostgreSQL
  • Other

    Operating Systems, Data Structures, Algorithms, Multithreading, Apache Cassandra, Argo CD, Distributed Architecture, Distributed Systems, APIs, Artificial Intelligence (AI), Machine Learning, Natural Language Processing (NLP), Machine Translation, Speech Recognition, Computer Vision, Computer Vision Algorithms, Machine Translation Algorithms, Probabilistic Information Retrieval, Search Engines, Compilers, Numerical Analysis, Abstract Algebra, Computational Geometry, Analytical Geometry, Computational Learning Theory, Linux Kernel, GitOps, Kubernetes Operations (Kops), Deep Learning, Convolutional Neural Networks, Apache James Server

Education

  • Master's Degree in Computer Science
    2012 - 2014
    Columbia University - New York, USA
  • Bachelor's Degree in Computer Science
    2008 - 2012
    University of Texas - Dallas, Texas, USA

To view more profiles

Join Toptal
Share it with others