Taro Logo
20

I'm Alex, cofounder of Taro (ex-Robinhood, Meta, Course Hero, PayPal) - Ask Me Anything

Profile picture
Alex Chiou (CTO @ Taro, ex-Robinhood, Meta, Course Hero)7 months ago

Born in Ohio, raised in Bay Area, went to UCLA, came back to Silicon Valley to work at these places:

  • PayPal (2014 - 2015): Got really good at foosball here
  • Course Hero (2015 - 2017): First Android engineer/tech lead, engineer #25 or so. Built their Android app from scratch, grew it from 0 to 100k users and the team from myself to 4 devs total. Course Hero is now Learneo and valued at $3.6B
  • Meta (2017 - 2021): Built the voice assistant on Portal (πŸͺ¦) and then went to Instagram Ads and scaled story ads from a $1B business to $5B+. Mentored a whole bunch of engineers from E3 -> E5, had as many 1 on 1s as a manager by the time I left
  • Robinhood (2021 - 2022): Revamped settings + profile, worked on Robinhood Spending Card, finally replaced my spaghetti Java skills with spaghetti Kotlin skills
  • Taro (2022 - ???): Building random stuff with my buddies Rahul and Charlie to make engineers' lives better.

Other facts about me:

I probably shouldn't be doing an AMA when we haven't shipped threaded replies yet, but YOLO 😎

658
18

Discussion

(18 comments)
  • 1
    Profile picture
    Senior Software Engineer [IC3] at Nvidia
    7 months ago

    What are you most proud of so far?

    If you could do anything differently knowing what you know now, what would it be?

  • 10
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    What are you most proud of so far?

    Career wise: Making Taro! The journey is only 1% finished (there's still so many community-requested features we need to build πŸ˜…), but it's been so incredible how far we've come so far and the glowing feedback we've gotten (if you have any ideas on how to make Taro better, email us at team@jointaro.com).

    Life wise: Somehow getting married to the most incredible woman in the world 😊

    If you could do anything differently knowing what you know now, what would it be?

    Communication is by far the most underrated and most useful skill, both in career and life. On a connected note, relationship building is almost always something engineers lag behind on and realize far too late is super important.

    So tactically, I wish I had spent way more time earlier in career (and in life) learning to communicate better, champion empathy, and strive to add value to others to cultivate those deep, longer-lasting relationships. In other words, I wish I knew the stuff in the following earlier:

  • 2
    Profile picture
    Tech Lead/Manager at Meta, Pinterest, Kosei
    7 months ago

    Favorite restaurant on Castro Street?

  • 3
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    Favorite restaurant on Castro Street?

    Ah this one's so hard... It feels bad choosing a chain, but I think it's Oren's Hummus.

  • 0
    Profile picture
    Full-stack Software Engineer at Bank of America
    7 months ago

    Hi Alex,

    Very curious to know how you scaled story ads from a $1B business to $5B+?

    And congratulations on your career so far. It is truly impressive!

  • 8
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    Very curious to know how you scaled story ads from a $1B business to $5B+?

    Good question - I will try to answer without writing too large an essay. πŸ˜‚

    When it comes to understanding the Meta ads business, you need to understand that it's intentionally a product monolith. There is no separate tool to run ads on Instagram vs. Facebook - For all of Meta, there is 1 tool called Ads Manager where you can upload your ad creative and run it across all surfaces (Facebook Feed, Instagram Stories, etc). Ads Manager will check in every possible surface by default unless you explicitly customize it.

    Another important thing to understand is that Facebook Feed is the dominant ad surface advertisers want as it has the biggest reach, is the most renowned, and is the most profitable.

    With that being said, that means there's 2 ways to scale up a new ads business at Meta:

    1. Experience optimization
    2. Liquidity

    Experience Optimization

    This is the more intuitive angle: You make the ad look more appealing with a smoother flow, so users are more inclined to click on it. I did a lot of projects here, including:

    1. Making the CTA (call to action) button at the bottom of the ad bigger, prettier, and with better animation
    2. When you long press on the ad, there's some text that animates in from the bottom describing the product more
    3. Taking busy ads (i.e. those with large captions and exciting photos) and laying it out across 2 separate cards instead of cramming them together in 1

    Liquidity

    This is more specific to Meta. Remember how Facebook Feed is the dominant ad format? Well, the main problem is that it's a 1:1 square media while stories is a full vertical screen with 9:16 aspect ratio media. This means that a Facebook Feed-oriented ad (i.e. most ads) won't work by default in Instagram Stories, so that checkbox won't automatically be checked in Ads Manager for Instagram Ads.

    So a crucial step to expanding the Instagram Stories business was to increase the number of ads formats it could support, therefore increasing the liquidity of the ad pool behind it (and the more ads you have, the more $$$ you make as you can show better, more targeted ads to people).

    Some liquidity projects I shipped were:

    1. Carousel ads with 1:1 media
    2. Longer video ads (stories are 15 seconds or less by default)
    3. Dynamic product ads (these are shopping-style ads with cards that use machine learning to dynamically rank the products shown)

    If people are more interested in what it's like to work on ads: "What is it like working on ads teams?"

    Here's a nice case study about my time at Instagram Ads as well: [Case Study] Solving A Multi-Million $$ Instagram Bug

  • 2
    Profile picture
    Startup Engineer
    7 months ago

    What's your theory on why success compounds (getting into Meta gets you into any tech crowd, why does the rich get richer), and for the things you know you should be doing...

    1. Why are they so hard to do?
    2. Why are they so... Obvious and abundant? I think literally everyone knows what they're supposed to be doing.
    3. Will it eventually lead to good outcomes in the long run, i.e. become a 100% causal relationship to whatever goal you have in mind?
  • 9
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    What's your theory on why success compounds (getting into Meta gets you into any tech crowd, why does the rich get richer)

    It's unfortunately just how capitalism works. 🀷 I do believe that in tech though, mobility based on merit is more possible than other fields where your stature is more directly correlated with years of experience.

    And now for the things people know they should be doing:

    Why are they so hard to do?

    People generally exhaust low-hanging fruit fast, so the remaining worthwhile items are just hard. It's also way easier being lazy than productive.

    Why are they so... Obvious and abundant? I think literally everyone knows what they're supposed to be doing.

    Tech has a lot of smart people (like those in Taro) telling you what you should be doing - There are few tech problems that are truly unsolved. It's just that the execution is hard.

    Will it eventually lead to good outcomes in the long run, i.e. become a 100% causal relationship to whatever goal you have in mind?

    You can never predict life, especially if you live outside of a first-world, developed region like the US, EU, Canada, etc. However, I have rarely met someone who had the below characteristics and didn't find career success:

    1. Able to ingest feedback quickly and actually alter their behavior because of it
    2. Was an excellent communicator and relationship builder
    3. Had a consistent work ethic
    4. Took care of themselves overall (good sleep, regular exercise, healthy social life)

    All 4 of these can be surprisingly difficult. If you want to get better at all of these, I recommend crawling through this thread: "What are software engineering fundamentals?"

  • 1
    Profile picture
    Tech Lead, Manager at Google
    7 months ago

    If you could give one advice to yourself when you first entered Tech, what would it be?

  • 5
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    If you could give one advice to yourself when you first entered Tech, what would it be?

    Great question! I would tell myself: "Don't just wait for others to tell you what to do."

    Being raised in an Asian background, I was taught to be obedient. Follow your parents' instructions. Follow the teachers' instructions. Follow all the rules to ace the exam. And once you get better grades than everyone else (i.e. you are better at following directions than everyone else), you will succeed in life.

    In software, this mentality doesn't get you very far:

    • Most people stick with this mentality into college, trying to get a 4.0 GPA just like they did in high school. However, it's much higher leverage to build side projects and network for internships.
    • After school, some people take their rule-following school instincts to interviews. They slavishly devote themselves to LeetCode. Their goal is to grind as many problems as possible, like a test, instead of zooming out and realizing LeetCode is just a tool in the broader picture to unlock a better job. The problem is that in FAANG interviews, your DSA rounds will be judged on far more than knowing the answer and there are rounds besides DSA (behavioral and system design).
    • At work, some people view their manager as a teacher/parent. They wait for their manager to give them tasks and projects. This admittedly largely works for junior -> mid-level (L3 -> L4), but it will hold you back getting to senior and beyond. At those levels, you need to learn how to create scope. You have to be an independent business-impact generating unit, which means that you by definition can't have opportunities spoon-fed to you.

    For resources on all these points, check these out:

  • 2
    Profile picture
    Mid-Level Software Engineer [E4] at Meta
    7 months ago

    Hello Alex hope you're having a good day and thank you for time.

    I have two questions please:

    • Do you have any recommendations to learn more about best practices for Ad Tech? My career is moving towards this domain.
    • For building your SaaS applications do you typically stick to building the backend services in a more flexible / dynamic language like (python or typescript/js) in order to build quickly and then later refactor to a better performing language (go, java, rust) when performance starts to matter? I'm really curious about lessons learned from delivering your product.

    Thank you again :)

  • 4
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    Do you have any recommendations to learn more about best practices for Ad Tech? My career is moving towards this domain.

    It will vary a lot from company to company - My advice, as with picking up any new domain, is to be aggressively curious, asking lots of questions and building up relationships. Follow the advice here: "What’s the most effective way to switch domains in tech?"

    In general though, I recommend these tactics with Ad Tech (these are all especially true since you work at Meta):

    • Log everything and be able to connect everything you do to revenue
    • A/B test everything, even bug fixes (the gate will act as an escape hatch if your fix is bad and helps you connect results to $$$)
    • Never forget that the advertiser comes first
    • Care a ton about product quality as blast radius and overall damage runs deep in this space, unlike with "regular" consumers
    • Invest as proactively as possible into a good oncall system + automated testing

    Here's some additional resources there:

    For building your SaaS applications do you typically stick to building the backend services in a more flexible / dynamic language like (python or typescript/js) in order to build quickly and then later refactor to a better performing language (go, java, rust) when performance starts to matter? I'm really curious about lessons learned from delivering your product.

    Always start off with the simple thing first - Taro's website doesn't have a real back-end (it's mostly Firebase) and is written in TypeScript. While I do miss having a back-end (I think it's getting to around the point where it makes sense to introduce one), I'm more concerned with separation of responsibilities and being able to fix bugs/ship quickly as opposed to raw performance.

    Assuming you're doing 80/20 rule with code quality, performance shouldn't really matter until you reach 100,000+ users at the minimum, maybe even 1,000,000+.

    I capture way more of my overall philosophy around this here: [Taro Top 10] Becoming A Better Coder

  • 1
    Profile picture
    Senior Software Engineer [ICT4] at Apple
    7 months ago

    How has your work-life balance been under each of these roles, and what would you've done differently in hindsight (if at all)?

  • 3
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    How has your work-life balance been under each of these roles, and what would you've done differently in hindsight (if at all)?

    Great question!

    PayPal: Too good. On average, I worked 3-4 hours a day there. Like I said in the initial post, I got quite good at foosball there πŸ˜‰

    Course Hero: Good. The company was already profitable and had taken very little outside funding when I joined, so it was naturally low pressure. The people there were great and very chill. I worked 7-8 hours a day and went to the on-campus gym after work to keep myself fit and dodge traffic. I was naturally very fast at my job due to the sheer amount of side projects I had done.

    Meta: Solid. As you might have expected, this is when my WLB took on the biggest threat. It was pretty bad at Portal because I was having a lot of trouble adapting to the fast paced Meta culture, and that organization frankly wasn't very well-run. At Instagram, I was dealing with the stress of E4 -> E5 (you have 3 years to do it or you're out). However, after I learned to manage my time better and pretty much incorporate all the stuff I now teach in Taro, I was working more 35 hour weeks than 40 hour ones. Across 4 years, I averaged out to a 6/10 WLB.

    Robinhood: Extremely good. I had one of the best managers I've ever had, and I purposely came in under-leveled at L5 instead of L6. The versatile skillset built up from my Meta days let me fill in high-visibility gaps and meet expectations easily. I was working 5-6 hours a day on average and actually getting paid far more than what I made at Meta.

    What would I have done differently?

    Overall, my work-life balance has been quite good across my career through a collection of luck (I had no idea PayPal would treat me the way it did), being very picky with my jobs, and getting good at reading people.

  • 1
    Profile picture
    Tech Lead Manager
    7 months ago

    As we know everyone's career journey looks different !! For folks who started working outside the US (Europe, Asia etc.) and came to the United States in the early 30's, there is a sense of "catching up for lost time" in terms of career growth when compared to peers in a similar age group. This could get compounded with events such as layoffs, slower promotions etc. Do you have any thoughts & suggestions around how should late bloomers manage their growth ?

  • 5
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    Do you have any thoughts & suggestions around how should late bloomers manage their growth?

    The following will almost certainly be true once you're in your 30s, compared to your 20s:

    1. You will have less energy
    2. Your personal life will be more complicated, have more stress, and be laden with more responsibilities

    This means that you need to be extremely precise with how you spend your time. A lazy "life-hack" I see that instead of being precise with time, you just brute-force acquire more of it by sacrificing #2 from above. This simply doesn't work in your 30s - Your personal life is too big and too messy to throw away like that, and the negative consequences will bleed into worse professional performance.

    My 2 favorite resources to help here are:

    1. "How to keep my mental health while working in a competitive team and having kids?"
    2. "How to figure out what the most important projects are?"

    Another thing about being older is that you are (hopefully) better at interacting with people, being diplomatic, and exuding empathy. Use that to your advantage. Don't be afraid to lead meetings, speak up on design docs, mentor others, and ask/answer questions.

    The mentorship aspect is actually very interesting as you have a quirky advantage here: Your life experience. You can mentor people on the personal side, hopefully in exchange for advice on the professional side. For example, let's say you are married with kids but you're an L4 mid-level engineer due to being a late bloomer. There is a brilliant L6 staff engineer on your team who's in their 20s and about to have their first child. You can offer your very valuable, very high-leverage advice stemming from real-world experience on raising kids to this person, and they can help you go from L4 -> L5 -> L6 in return.

    The value of your life experience is monotonically increasing - It literally cannot go down as you cannot "un-experience" something (minus severe memory loss). It sounds a bit cheesy, but simply being alive longer than other humans brings value. Don't let that go to waste.

  • 0
    Profile picture
    Ex-Google Software Engineer
    7 months ago

    When are y'all coming down to Austin?

  • 0
    Profile picture
    Alex Chiou [OP]
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    When are y'all coming down to Austin?

    Sometime in 2024 hopefully, but it's hard to make guarantees. We have talked about doing a "Taro Tour" where we just go all over the world to visit folks.

    The tricky part is finding the time (and this would be very expensive of course). I also dislike traveling in general, haha.