# Ivan Peng > Software Engineer Location: San Francisco Bay Area, United States Profile: https://flows.cv/ivanpeng Ever since my first introductory programming course in high school, I've been in awe of how it's such a powerful tool for problem solving. And that's what I am at heart: a problem-solver. Since obtaining my Bachelor's in Engineering Science (specialization in Math, Statistics, and Finance), I've moved from developing numerical modeling software to general software development, from mobile to big data. Although recency bias has put my strongest domain of expertise as data infrastructure, I am by no means looking for a job in that specific field. I am, however, looking for a forward-thinking company which relentlessly pushes the boundaries of automation, orchestration, and maintainability -- one never satisfied with the status quo. If you're looking for a test-driven, generalist developer with ~5 years of experience, or just someone looking to take on a challenge, I'd love to hear from you! Specialties: - Coding Languages: Scala (akka, Spark), JavaScript, C#/ASP.NET, Python (Django, Jupyter), Swift, Android, Java - Javascript Frameworks: Angular2 + Typescript, ReactJS, BabelJS + ES6, NodeJS, Mocha - Databases: Hadoop/HDFS/Parquet, MySQL, PostgresSQL, MongoDB, Sqlite - Build Frameworks: Docker, SBT, Webpack, Jenkins, TravisCI - Spoken Languages: English (native), Mandarin Chinese (native speaker, elementary reading and writing), French (competent) ## Work Experience ### Software Engineer @ Shinami Jan 2023 – Present ### Software Engineer @ DoorDash Jan 2021 – Jan 2023 | San Francisco, California, United States ### Software Engineer - Data Platform @ Nextdoor Jan 2019 – Jan 2021 | San Francisco, California ### Software Engineer - Data @ Index Exchange Jan 2017 – Jan 2018 | Toronto, Canada Area I worked as a data infrastructure engineer, rebuilding the data pipeline to reduce report delivery time from 48 hours down to 3. I touched all three parts of the ETL pipeline during my time there: 1. In extraction, I wrote jobs in Scala (with akka and Zookeeper/Curator) to download audit logs from 6000 servers continuously and it real-time. This equates to 300 GB compressed data per 10 minutes, or 80 TB of data uncompressed per day. 2. In the transformation phase, I utilized Spark structured streaming to read the raw audit logs, convert from raw text to snappy-compressed parquet (with a schema) format to allow for read-optimized operations. 3. In the quasi-load phase, I worked on report aggregation and optimization of vanilla Spark batch jobs. I worked with scala/Spark and HDFS to do the plethora of joins (broadcast and merge-sort), unions, shuffles, and repartitions necessary to answer the question: how much money are we making on an hourly basis? We further optimized the job UDFs and implemented a custom solution to the ever-dreaded Spark small-files problem involving the spark metadata. On a division-wide level, I also set the CI/CD pipelines for this new project, utilizing sbt. ### Software Engineer @ Index Exchange Jan 2016 – Jan 2017 I worked as a full-stack developer, making various apps that helped clients configure their sites to serve programmatic ads through IX auctions. I primarily worked in the header bidding space, and created apps to set clients up with programmatic bidding through a simplified and intuitive (at least to people in programmatic advertising!) manner. Technology wise, I primarily work in the JavaScript stack, touching tools like in Angular2, Typescript, Node, Mocha, Chai. On the deployment side, I had a large involvement in Docker and webpack for containerizing and bundling, and Jenkins for deployment. ### Developer @ Intranel Ltd. Jan 2015 – Jan 2016 | Christchurch, New Zealand Intermediate developer for a small contracting company based out of Christchurch, New Zealand. I worked on a variety of projects with a mobile focus. I worked primarily in the Microsoft stack: C#, ASP.NET MVC, Xamarin (Android and iOS), along with various Javascript frameworks (Knockout, jQuery, node). I also dabbled in native Android and Swift for iOS apps. ### Developer, Android and Back-end @ Plany Corp. Jan 2013 – Jan 2014 | Taipei, Taiwan Plany is a social scheduling start-up which sought to solve the problem of large groups finding a time to meet up. The idea was simple: instead of going back and forth over a chat thread with a group of people, the app determines the best time for you all based on your schedule. Simple as it sounds, getting people to throw their whole schedule online is quite difficult. I worked on an intermediary app, which gamified scheduling meetups and making group decisions, to gain a user base and ease them into putting their schedules online. I primarily worked in Android, with exposure to various SDKs: Facebook, Foursquare, and Google Wallet. I also did some back-end and data scraping with Grails. ### Full-stack Developer @ Obatech Jan 2013 – Jan 2013 | Taipei, Taiwan - Short-term contract developer for a social start-up. Built a proof-of-concept application in Android which dealt with secure generation of hash keys, and verification via QR code. - Accepted for JFDI Asia, one of Asia's premier startup incubators. - End-to-end development utilizing Java, Spring MVC for a front-end and API, and native Android for the mobile app. ### Technical Systems Analyst: Developer @ Royal Bank of Canada Capital Markets Jan 2011 – Jan 2012 | Toronto, Canada As a junior developer in the Fixed Incomes and Currencies Technology Department, I developed a framework for an aggregated risk reporting system. I was primarily responsible for curating inbound data feeds and loaded it to the database via our ETL framework. I also assisted in developing the efficient caching framework to communicate with the database and Linux OS. I programmed primarily in Java with Spring, along with some manipulation in UNIX, JavaScript, MSSQL, and Sybase. ## Education ### B.ASc in Engineering Science in Math, Statistics & Finance Major University of Toronto ## Contact & Social - LinkedIn: https://linkedin.com/in/pengivan --- Source: https://flows.cv/ivanpeng JSON Resume: https://flows.cv/ivanpeng/resume.json Last updated: 2026-03-30