Darin Tay

Entrepreneur, software engineer, technology person.
From Canada, now living in the SF Bay Area


I'm excited about solving hard problems using technology, wherever that takes me. Whether that means building software that senses and understands the world around us, architecting and scaling infrastructure to handle millions of users, or designing tools and interfaces to make all of us more effective.

History

I graduated from the University of Waterloo, with a degree in Software Engineering.
I interned at NITI, Google (x2), Blue Castle Games, and Altera.
I worked on the Google Lively project, and I'm listed on a related patent.
I was an engineer at Google. Built internal infrastructure, made people and processes more efficient, scaled and improved services to keep them running.
I cofounded WiFiSLAM. We pushed the boundaries of indoor positioning technologies on smartphones. We were one of the first companies through StartX. We raised money, hired engineers, built a cool product, and eventually ended up at Apple.
iOS location technology and services at Apple. Client-side code running on iOS devices everywhere, backend code running advanced models on tons of data, and processes/tooling to help advance the state-of-the-art. I'm listed on a bunch of related patents.

Fun Projects

Some personal projects that I've hacked on in my spare time.

Card Tracker

Platform: Python, Tensorflow, Keras

Deep neural networks to locate cards within a photo, orient them, and read their text. Uses techniques from YOLO and Faster R-CNN to localize rotated cards within the image. Combining RNN and CNN techniques to do OCR for reading the letters off the cards.

Also ported to TensorFlow Mobile, runs on iOS, as an experiment to see what it takes to run visual inference in real-time on mobile devices, and the accuracy/performance tradeoffs of mobile-targeted network architectures.

WebAsm Game

Platform: C++, WebAssembly, WebGL, Javascript

Exploring how WebAssembly allows the same high performance code to run natively as well as interactively on the web. A game engine written in C++ and scripted using Javascript.

On the web the C++ is compiled to web assembly, and it is scripted using your browser's native Javascript. Conversely, on the desktop/mobile, the same C++ code runs natively and the Javascript is run via an embedded V8 instance.

Task Tracker

Platform: Typescript, React, NodeJS

A flexible approach to tackling tasks by recursively breaking them down into smaller pieces until they are well-defined and manageable.

Once tasks are broken down into bite-sized pieces, it's easy to chew through the pieces one-at-a-time and rapidly make progress through huge and complex undertakings.

Also a good excuse to play with React.

Interactive RayTracer

Platform: C++, OpenGL

An interactive raytracer, able to display results as they're computed and take live input from the user to change the scene.

There are many other faster, better, more mature raytracers out there, but it's a fun space to explore.

Links

LinkedIn

Patents