Mark Kim, Developer in San Francisco, CA, United States
Mark is available for hire
Hire Mark

Mark Kim

Verified Expert  in Engineering

Back-end Developer

Location
San Francisco, CA, United States
Toptal Member Since
November 1, 2021

Mark is an experienced back-end and infrastructure engineer that has driven feature development, developed systems at scale, and managed full-stack teams to deliver high-performance products. Mark's combination of hands-on technical ability and management experience allows him a versatile and wide-ranging skillset valuable to any team and organization.

Portfolio

Informed, Inc
Ruby, PostgreSQL, Amazon Web Services (AWS), Data Analytics...
Zynga, Inc
Java, Android, iOS, Objective-C, Chef, Ansible, AWS Cloud Architecture

Experience

Availability

Full-time

Preferred Environment

MacOS, Visual Studio Code (VS Code), Go, Docker, Docker Compose

The most amazing...

...project I've worked on was the migration of a back-end service handling 1 billion requests a day from on-premise to a cloud-based platform with zero downtime.

Work Experience

Engineering Lead

2019 - 2021
Informed, Inc
  • Led the development and launch of a product MVP that eventually led to the successful onboarding of multiple large-scale clients and secured the company's series A funding.
  • Led applications and machine learning teams developing a document processing pipeline capable of scaling and processing over 100,000 documents a day.
  • Organized all engineering efforts at the company across product development, machine learning, live operations, customer support, and sales engineering.
  • Represented the company as the primary technical point of contact and interfaced directly with customers throughout the sales and integration process.
  • Maintained a responsive, Agile-based engineering team capable of prioritizing and organizing around critical business goals under pressure.
Technologies: Ruby, PostgreSQL, Amazon Web Services (AWS), Data Analytics, Agile Software Development

Senior Manager, Engineering

2010 - 2018
Zynga, Inc
  • Led client-side cross-platform SDK and server-side engineering activities for the ad platform servicing over 750 million API calls per day.
  • Drove the roadmap process of gathering input from key partners and formulating strategic quarterly and annual roadmap planning.
  • Migrated Zynga’s ad platform server infrastructure supporting $250 million in annual ads business from company-owned datacenters to AWS in three months with zero downtime.
  • Implemented optimizations to reduce server node count from 250 to 20 servers, realizing over $400,000 annual savings in AWS EC2 costs.
  • Collaborated with business development partners to grow and sustain ads business at Zynga, guiding adoption and operation of various ad technologies with all internal game teams.
Technologies: Java, Android, iOS, Objective-C, Chef, Ansible, AWS Cloud Architecture

Back-end Microservices and GraphQL for Neo-Bank in Go/Python

As a back-end developer, I worked with various stakeholders to deliver functionality ranging from enhanced reporting capabilities for internal teams, third-party API integrations for real-time data analysis, GraphQL queries, and mutations for customer-facing front-end features to manage deposited funds and compliance data, and new endpoints and features for RESTful APIs integrated by our clients. The back-end stack consisted of microservices developed in Go, leveraging GRPC, Docker, Kubernetes, MySQL, gqlgen, and Swagger. Additionally, tooling for RESTful APIs was maintained in Python and used for demo and testing purposes, in addition to load testing.

Ad Server Integrations in Go/Ruby

I was the back-end engineer tasked with the integration of the third-party ad inventory for a new product on a major top-10 mobile advertising network. The third-party APIs were integrated to conform to a single common interface within an ad server built in Go using go-kit and custom queueing infrastructure for parallel processing of ad data ingestion. The role also required interfacing with the third-party's support teams for integration-related debugging and ongoing operational issues. The stack also consisted of MySQL, Couchbase, Kubernetes, and Ruby/Rails for additional tooling.

Infrastructure Management and Deployment Automation for High-scale RESTful API in Python

During Zynga's transition from on-prem data centers to the cloud, I was in charge of the migration of ad serving infrastructure and the core ad server, which represented over 1B API calls a day combined across all components. The deployment tools for the various systems were based on Ansible that is implemented in Python. The scope of the work was to update our Ansible tools to deploy to our new cloud platform and implement and update custom modules in Python that were added for our specific cloud deployment needs. This included Python modules to implement server health checks, monitoring, deploy notifications, as well as rolling deploys of new server code across a fleet of 200+ nodes.

Ad Server and Platform Migration—Zynga

I migrated a high-performance RESTful API built on Java from an on-premise data center to AWS for a Fortune 1000 company. The API serviced over one billion calls daily and supported all ad revenue at the company, which accounted for over one-third of the company's overall revenue. As the sole engineer on the project, I planned out the required resource and service footprint within AWS, implemented necessary changes to support a smooth migration, and executed a phased plan for migrating the service with zero downtime. The project was completed within the aggressive timeline set as part of a larger effort to move all back-end services to AWS. The project also led to a more efficient footprint through a reduced server count, improved success rate metrics, and increased stability.

Shipping Platform Built on Django with Python and Go

A Python/Go-based eCommerce platform processing and supporting the shipment of millions of packages a month and integrating with all major eCommerce platforms like Shopify, Amazon, Wix, and more.

Project details:
• Acted as the back-end engineer focused on third-party API integrations importing the order information from eCommerce channels like Shopify, Wix, eBay, WooCommerce, and Square involving REST/GraphQL on the Django/Go stack
• Implemented a scalable queuing solution to process incoming Shopify customer orders with retries, exponential backoffs, and row-level table locking with transactions able to process 100,000+ orders per day
• Drove system-level debugging on the live production environment involving performance issues and faulty API integrations

Back-end Engineer with Experience in Scalable Systems

https://goshippo.com/
I worked as a senior back-end engineer focused on third-party API integrations into eCommerce platforms like Shopify, Wix, eBay, WooCommerce, and Square, involving REST/GraphQL on Django-Python and Go stack. I implemented a scalable queuing solution to process incoming Shopify customer orders with retries, exponential backoffs, and row-level table locking with transactions able to process 100,000+ orders/day. I led the migration of a major Amazon Selling Partner API store integration, transitioning from a legacy API to Amazon's new OAuth 2.0-based API. I also performed drive system-level debugging on a live production environment involving performance issues and faulty API integrations.

Paradigms

Agile Software Development, REST

Languages

Go, JavaScript, Ruby, Java, Python, Objective-C, GraphQL

Tools

Git, Docker Compose, Ansible, Chef

Platforms

Unix, MacOS, Visual Studio Code (VS Code), Docker, Android, iOS, Google Cloud Platform (GCP), Heroku, Amazon Web Services (AWS)

Storage

PostgreSQL, MySQL, Google Cloud

Other

Data Analytics, AWS Cloud Architecture, Operations, APIs, API Integration, SOC 2, Compliance, Cloud

Libraries/APIs

REST APIs

2018 - 2020

Master's Degree in Business Administration (MBA)

University of Pennsylvania, The Wharton School - Philadelphia, PA, USA

2000 - 2005

Bachelor's Degree in Computer Science

University of California, Santa Barbara - Santa Barbara, CA, USA

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring