CINXE.COM
Ankush Gupta - Ankush Gupta
<!doctype html> <!-- Minimal Mistakes Jekyll Theme 4.26.2 by Michael Rose Copyright 2013-2024 Michael Rose - mademistakes.com | @mmistakes Free for personal and commercial use under the MIT license https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE --> <html lang="en-US" class="no-js"> <head> <meta charset="utf-8"> <!-- begin _includes/seo.html --><title>Ankush Gupta - Ankush Gupta</title> <meta name="description" content="Trials and tribulations of Ankush, the Software Engineer."> <meta name="author" content="Ankush Gupta"> <meta property="og:type" content="website"> <meta property="og:locale" content="en_US"> <meta property="og:site_name" content="Ankush Gupta"> <meta property="og:title" content="Ankush Gupta"> <meta property="og:url" content="https://ankushg.com/"> <meta property="og:description" content="Trials and tribulations of Ankush, the Software Engineer."> <meta property="og:image" content="https://ankushg.com/assets/images/og_image.jpg"> <meta name="twitter:site" content="@ankushg"> <meta name="twitter:title" content="Ankush Gupta"> <meta name="twitter:description" content="Trials and tribulations of Ankush, the Software Engineer."> <meta name="twitter:url" content="https://ankushg.com/"> <meta name="twitter:card" content="summary"> <meta name="twitter:image" content="https://ankushg.com/assets/images/og_image.jpg"> <link rel="canonical" href="https://ankushg.com/"> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Person", "name": "Ankush Gupta", "url": "https://ankushg.com/", "sameAs": ["https://ankushg.com","https://ankushg.com/feed.xml","https://twitter.com/ankushg","https://github.com/ankushg","https://www.linkedin.com/in/ankushmg/"] } </script> <!-- end _includes/seo.html --> <link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Ankush Gupta Feed"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script type="text/javascript"> document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js '; </script> <!-- For all browsers --> <link rel="stylesheet" href="/assets/css/main.css"> <link rel="preload" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@latest/css/all.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@latest/css/all.min.css"></noscript> <!-- start custom head snippets --> <!-- Generated by https://realfavicongenerator.net/change_log#v0.16 --> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> <link rel="manifest" href="/site.webmanifest"> <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5"> <meta name="msapplication-TileColor" content="#2d89ef"> <meta name="theme-color" content="#5bbad5"> <!-- end custom head snippets --> </head> <body class="layout--single wide"> <nav class="skip-links"> <ul> <li><a href="#site-nav" class="screen-reader-shortcut">Skip to primary navigation</a></li> <li><a href="#main" class="screen-reader-shortcut">Skip to content</a></li> <li><a href="#footer" class="screen-reader-shortcut">Skip to footer</a></li> </ul> </nav> <div class="masthead"> <div class="masthead__inner-wrap"> <div class="masthead__menu"> <nav id="site-nav" class="greedy-nav"> <a class="site-title" href="/"> Ankush Gupta </a> <ul class="visible-links"><li class="masthead__menu-item"> <a href="/posts/" >Writing</a> </li><li class="masthead__menu-item"> <a href="/speaking/" >Speaking</a> </li><li class="masthead__menu-item"> <a href="/projects/" >Building</a> </li><li class="masthead__menu-item"> <a href="/about/" >About Me</a> </li></ul> <button class="search__toggle" type="button"> <span class="visually-hidden">Toggle search</span> <i class="fas fa-search"></i> </button> <button class="greedy-nav__toggle hidden" type="button"> <span class="visually-hidden">Toggle menu</span> <div class="navicon"></div> </button> <ul class="hidden-links hidden"></ul> </nav> </div> </div> </div> <div class="initial-content"> <div id="main" role="main"> <div class="sidebar sticky"> <div itemscope itemtype="https://schema.org/Person"> <div> <div class="author__avatar"> <img alt="Ankush Gupta" itemprop="image" src="/generated/assets/images/bio-photo-200-18738cdfa.jpg" srcset="/generated/assets/images/bio-photo-36-ab9c5e627.webp 36w, /generated/assets/images/bio-photo-100-ab9c5e627.webp 100w, /generated/assets/images/bio-photo-200-ab9c5e627.webp 200w" sizes="(max-width: 1024px) 36px, 98px" width="200" height="200"> </div> <div class="author__content"> <h3 class="author__name" itemprop="name">Ankush Gupta</h3> <div class="author__bio" itemprop="description"> <p>I’m a Staff Software Engineer at <a href="https://quizlet.com/mission">Quizlet</a>.<br /><br />I currently focus delivering awesome experiences with Android and Kotlin Multiplatform – both for our users and my fellow engineers.</p> </div> </div> <div class="author__urls-wrapper"> <button class="btn btn--inverse">Follow</button> <ul class="author__urls social-icons"> <li><a href="https://twitter.com/ankushg" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-twitter-square" aria-hidden="true"></i><span class="label">Twitter</span></a></li> <li><a href="https://github.com/ankushg" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-github" aria-hidden="true"></i><span class="label">GitHub</span></a></li> <li><a href="https://www.linkedin.com/in/ankushmg/" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-linkedin" aria-hidden="true"></i><span class="label">LinkedIn</span></a></li> <li><a href="https://ankushg.com/feed.xml" rel="nofollow noopener noreferrer"><i class="fas fa-fw fa-rss-square" aria-hidden="true"></i><span class="label">Feed</span></a></li> <!-- <li> <a href="http://link-to-whatever-social-network.com/user/" itemprop="sameAs" rel="nofollow noopener noreferrer me"> <i class="fas fa-fw" aria-hidden="true"></i> Custom Social Profile Link </a> </li> --> </ul> </div> </div> </div> </div> <article class="page" itemscope itemtype="https://schema.org/CreativeWork"> <div class="page__inner-wrap"> <header> </header> <section class="page__content" itemprop="text"> <h2 id="recent-posts">Recent Posts</h2> <div class="feature__wrapper"> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/increment_mobile_cover-800-7d1327c7a.png" srcset="/generated/assets/images/increment_mobile_cover-360-aed8d5284.webp 360w, /generated/assets/images/increment_mobile_cover-720-aed8d5284.webp 720w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="1600" height="836" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="https://increment.com/mobile/write-once-run-anywhere/">Write Once, Run Anywhere? </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>I wrote an <a href="https://increment.com/mobile/write-once-run-anywhere/">article</a> for <a href="https://increment.com/mobile/">Increment’s Mobile edition</a>, sharing lessons about the nuances of cross-platform development. Published in print and digital!</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/kmm_hero-755-0ce13282d.jpg" srcset="/generated/assets/images/kmm_hero-360-b9be14501.webp 360w, /generated/assets/images/kmm_hero-720-b9be14501.webp 720w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="755" height="310" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="https://kotlinlang.org/lp/mobile/case-studies/quizlet/">Quizlet + Kotlin Multiplatform Case Study </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>I authored a <a href="https://kotlinlang.org/lp/mobile/case-studies/quizlet/">case study</a> with JetBrains to share how Quizlet is using Kotlin Multiplatform to simplify our development efforts.</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/parcels-800-670783ecd.jpg" srcset="/generated/assets/images/parcels-360-c740ac765.webp 360w, /generated/assets/images/parcels-720-c740ac765.webp 720w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="1600" height="1068" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/posts/multiplatform-parcelize/" rel="permalink">Using <code class="language-plaintext highlighter-rouge">@Parcelize</code> in Kotlin Multiplatform </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>Using Platform-Specific Declarations to unlock <code class="language-plaintext highlighter-rouge">@Parcelize</code> in <a href="https://www.jetbrains.com/lp/mobilecrossplatform/">Kotlin Multiplatform</a> Projects</p> </div> </div> </article> </div> <div class="feature__item--center"> <a href="/posts/" class="text-center btn btn--inverse">See all posts</a> </div> </div> <h2 id="recent-talks">Recent Talks</h2> <div class="feature__wrapper"> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/droidcon_sf_2019-800-eeffab5ec.jpg" srcset="/generated/assets/images/droidcon_sf_2019-360-16cdd5d62.webp 360w, /generated/assets/images/droidcon_sf_2019-720-16cdd5d62.webp 720w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="1600" height="880" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/speaking/droidcon-sf-2019" rel="permalink">Powering Worldwide Learning with Kotlin Multiplatform </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>droidcon SF 2019!</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/dsw_2019-588-d0327fd33.png" srcset="/generated/assets/images/dsw_2019-360-88da8e71d.webp 360w, /generated/assets/images/dsw_2019-588-88da8e71d.webp 588w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="588" height="331" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/speaking/denver-startup-week-2019" rel="permalink">Principles of Shared Code </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>Denver Startup Week 2019. <br />Free community event!</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img alt="" src="/generated/assets/images/droidcon_berlin_2019-800-95444e9d4.jpg" srcset="/generated/assets/images/droidcon_berlin_2019-360-d18bdce3d.webp 360w, /generated/assets/images/droidcon_berlin_2019-720-d18bdce3d.webp 720w" sizes="(max-width: 600px) calc(100vw - 32px), (max-width: 768px) calc((100vw - 48px) / 3), (max-width: 1024px) calc((100vw - 64px) / 3), (max-width: 1280px) calc((100vw - 240px - 32px) / 3), (min-width: 1280px) 300px" width="1600" height="900" /> </div> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/speaking/droidcon-berlin-2019" rel="permalink">A Journey in Shared Code with Kotlin Multiplatform </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>droidcon Berlin 2019: My first time speaking at a conference!</p> </div> </div> </article> </div> <div class="feature__item--center"> <a href="/speaking/" class="text-center btn btn--inverse">See all speaking</a> </div> </div> <h2 id="recent-projects">Recent Projects</h2> <div class="feature__wrapper"> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/projects/thesis" rel="permalink">Cross-Engine Query Execution in Federated Database Systems </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>👨🏻🎓 In my Master’s Thesis, I implemented and evaluated a Query Executor that can evaluate queries joining across relational, column-store, document, and time-series databases.</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/projects/hydra" rel="permalink">Hydra: A Trustless Decentralized Digital Identity System </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>Hydra is a decentralized and secure authentication system to access services on the Internet.</p> </div> </div> </article> </div> <div class="feature__item"> <article class="archive__item" itemscope="" itemtype="https://schema.org/CreativeWork"> <div class="archive__item-body"> <h2 class="archive__item-title" itemprop="headline"> <a href="/projects/zauberflote" rel="permalink">Zauberflöte: A Transparent Peer-to-Peer CDN </a> </h2> <div class="archive__item-excerpt" itemprop="description"> <p>Zauberflöte is a peer-to-peer content delivery network. The system uses WebRTC to cache and distribute content between peers. <br /><br /></p> </div> </div> </article> </div> <div class="feature__item--center"> <a href="/projects/" class="text-center btn btn--inverse">See all projects</a> </div> </div> <div class="feature__item--center"> <p><a href="/all/" class="text-center btn btn--info">See all of my content in one place</a></p> </div> </section> <footer class="page__meta"> </footer> </div> </article> </div> </div> <div class="search-content"> <div class="search-content__inner-wrap"><form class="search-content__form" onkeydown="return event.key != 'Enter';" role="search"> <label class="sr-only" for="search"> Enter your search term... </label> <input type="search" id="search" class="search-input" tabindex="-1" placeholder="Enter your search term..." /> </form> <div id="results" class="results"></div></div> </div> <div id="footer" class="page__footer"> <footer> <!-- start custom footer snippets --> <!-- end custom footer snippets --> <div class="page__footer-follow"> <ul class="social-icons"> <li><strong>Follow:</strong></li> <li><a href="https://twitter.com/ankushg" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-twitter-square" aria-hidden="true"></i> Twitter</a></li> <li><a href="https://github.com/ankushg" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-github" aria-hidden="true"></i> GitHub</a></li> <li><a href="https://www.linkedin.com/in/ankushmg/" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-linkedin" aria-hidden="true"></i> LinkedIn</a></li> <li><a href="/feed.xml"><i class="fas fa-fw fa-rss-square" aria-hidden="true"></i> Feed</a></li> </ul> </div> <div class="page__footer-copyright">© 2025 <a href="https://ankushg.com">Ankush Gupta</a>. Powered by <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div> </footer> </div> <script src="/assets/js/main.min.js"></script> <script src="/assets/js/lunr/lunr.min.js"></script> <script src="/assets/js/lunr/lunr-store.js"></script> <script src="/assets/js/lunr/lunr-en.js"></script> </body> </html>