Wednesday, September 29, 2021

Mental Health

In September 2020, I decided to stop posting on Twitter for one year. I wanted to see how it would affect my work output and focus. After coming back in September 2021, I was flooded with the same feelings of FOMO and wanting to post responses but I held back

I am going to go on a social media blackout again -- I won't be posting or updating anything on Twitter or LinkedIn but I will pop in every once in a while to read new developments in the community. 

I think it's important for my own mental health to fully control my social media consumption and participation.

Jaime

Friday, September 17, 2021

Believe In Your People

"What you do is who you are." - Ben Horowitz

During the height of my recruiting initiatives at Battlefy in late 2017, I remember meeting with a talented software engineer originally from Eastern Europe. For anonymity purposes, let's call him Vlad.

Vlad just came out of a local Vancouver-based developer boot camp and shared the same passions of Battlefy employees: we loved esports. He reached out to me through the VanJS Slack group. He asked to go for coffee to talk about esports and ask a few questions about the Battlefy work environment. By the way, this is totally the Silicon Valley way of doing things.

I met him at Waves on Hastings and we had an enthusiastic talk about esports and how big Battlefy's mission really is (powering esports experiences). What was supposed to be a 30-minute coffee chat became more than an hour. After our conversation, I ran back to the office and excitedly added Vlad to our Applicant Tracking System. I was so convinced that he was a great fit for us.

Fast forward a few days after having Vlad go through the formal interview process, the hiring committee (the people who interviewed him) all had the same concerns about Vlad. His technical ability for a junior at the time was unmatched but his approach to communication wasn't "tactful" and could rub people in the wrong way.

I've worked with many world-class engineers in the past that originally came from Eastern Europe and I could pattern match that sometimes it's just the culture of growing up in that environment: being really direct with communicating a point which can be received as aggressive or condescending.

I was shocked at the feedback the hiring committee gave me. After plenty of back and forth going over the risks/red flags and his strengths, we came to the conclusion that we would not move forward with Vlad.

I had to deliver the bad news to Vlad. While on the phone, I apologized to him that I couldn't convince the team to move forward with him. I could hear the disappointment in his voice. He responded professionally with, "I understand. I'll work on improving these areas."

That night, I couldn't sleep. I felt like a coward -- like I didn't do enough to fight for Vlad. My conscience was telling me, "Jaime, you fucking coward. You should have done more to stand up for him."

The evidence was there: Vlad was incredibly passionate about esports and he demonstrated his technical ability in the technical interviews. It felt like we just missed an opportunity to have a world-class engineer join the team because of his unique style of communication. At that moment, I decided that this was the hill I was ready to die on -- stake my reputation -- everything. I was all-in for Vlad.

The following day, I set up 1on1s with every person on the hiring committee to try to convince them otherwise about Vlad. I was so full of conviction and belief that Vlad would be an incredible and impactful contributor to the company that I literally wouldn't let the hiring committee leave the meeting room until I got their blessing to reverse their decision.

After convincing the hiring committee that Vlad would be a great fit, I called him immediately to let him know that we wanted him to join. We went through a unique onboarding process where Vlad and I would be working closely together on projects to help with positively reinforcing how to effectively communicate within the organization. In every single project I've worked on with Vlad, he never let me down. He always went above and beyond.

Vlad went on to become one of our most respected and most technical senior engineers. He was part of many high-visibility products and projects that took our company to new heights.

Wherever Vlad is now, I just know and believe that he's kicking ass and taking names. In retrospect, my lesson learned is there is going to be a time and a place where you will come across a character-defining situation. In those moments of adversity, follow your core values. In this story, it's being people first. Believe in your people and they will go on to make a huge positive impact on your organization.

Cheers,
Jaime

Tuesday, September 14, 2021

Callin app redefines the B2C MVP and sets the new standard

After dabbling in Callin for the past week since its launch, I've come to the realization that Callin has set the new standard for B2C MVPs. 

In many startup books, an MVP is a "minimum viable product". Examples can include enabling a user to complete a specific task to solve a problem. In the context of a podcasting mobile application, one could probably say the MVP is "allowing users to record and upload their podcast". In today's fast-paced startup meta, is that really enough to keep users engaged? does that really tick the "make something people want" checkbox from Y Combinator?

My speculation is that it isn't enough. This is why I think Callin has changed the meta by raising the standards of what a B2C MVP is. 

Here are a few things I've noticed in terms of features. Mind you, these are just features. If you actually use the Callin app, you'll notice all the little embellishments like fluid transitions/animations. It really feels like the team sweats the details. 

It's an absolute delight to use when you're taking a walk, exercising in the gym, listening on your lunch break, as well as, winding down in the evening. 

Anyway, here are the features:

  • onboarding
    • by interest
    • by show (recommendations)
  • discovery
    • recommended list
    • shows I'm subscribed to
    • new and upcoming shows
    • sharing shows via deep links
  • content creation
    • live-recording and uploading
    • show management (upcoming shows, uploading past episodes)
    • my assumption is that they're running raw files of previously recorded podcasts through an audio-to-text translator to determine who is talking at what time so that the blue circle lights up correctly
  • participation
    • subscriptions, relationships (following/followers)
    • comments
    • likes
    • calendar integration (I don't understand why apps don't do this, this is amazing)
  • user profiles
    • sharing 
    • followers/following
    • highlights
    • episodes
  • authentication/authorization (obviously)
So I think with this stack of features and the level of detail, the Callin team has set the new standard that all B2C startups should look up to. We all have a lot to learn from the man, the myth, the legend, David Sacks, and his incredible product team.

Cheers,
Jaime

Monday, June 14, 2021

What does it take to become a Senior Software Engineer?

I think that depends on the organization. A Senior Software Engineer at one company might not be Senior in another.

At a startup (less than 25 people), generally Senior Software Engineers (Individual Contributors) are:

  • great at breadth and depth of knowledge (domain knowledge)
    • knows a lot about how the business operates and its customers
    • knows a lot about legacy parts of the product
    • knows a lot about latest frontend and backend practices
  • great at planning, executing, deploying, and maintaining software
    • authoring technical design docs
    • providing feedback on other design docs
    • providing technical feasibility analysis to product managers/project managers
    • providing estimates
    • updating kanban/agile boards to keep stakeholders in the know of how things are going
    • providing code reviews and feedback
    • rallies the team to make improvements on developer workflows (finding out better ways of shipping, better tools and technologies, gets the team excited and bought-in)
    • innovates on the developer experience (reducing build times, simplifies tooling and onboarding) which increases the output of the team
  • great at interviewing and hiring developers
    • sourcing devs through outbound on linkedin/past connections
    • sourcing devs through inbound by writing company devblogs
  • great at onboarding new developers
    • training sessions (sync), 
    • screen recordings (async)
    • updates and maintains documentation on systems and processes
  • great at gluing/coordinating with other disciplines (designers, project managers)

These are just a few responsibilities when it comes to a small tech startup, there's probably way more that in different companies though.

Cheers,
Jaime

Originally answered on reddit/React

Monday, May 31, 2021

Setting up MetaMask as a Canadian

MetaMask is a crypto wallet that you can install on your mobile phone and web browser as a Chrome extension. It's very easy to install and start connecting to different Dapps (Cryptokitties, OpenSea.io).

That being said, as a Canadian, it was really difficult to buy ETH for my MetaMask wallet. Currently, MetaMask supports sendwyre and direct deposit. This sounds great but it was a horrible experience trying to do a direct deposit. I use one of the biggest banks in Canada and they don't have a great opinion of crypto in general so they keep rejecting the direct deposits.

I grew frustrated because I didn't want to call my bank. I started to look at Canadian-specific solutions on Bitcoin CA Sub-Reddit. I came across Shakepay. Shakepay is both an exchange and a wallet. Their approach to transferring Canadian funds into ETH is interesting: They get users to e-interac transfer to a specific email and enter details about the payment. I thought this was brilliant so I did it and within a few minutes, I had my ETH. Woohoo!

So, now I have ETH in my Shakepay wallet -- I wanted to move that ETH to my MetaMask wallet though. I went into my Shakepay mobile app and tried to transfer it from Shakepay to MetaMask wallet address but it wouldn't allow me because the minimum ETH to transfer is 0.1 (which is about $350 CAD at the time). I ended up putting in the amount that was needed and voila, I had my ETH in my MetaMask wallet within 5 minutes of the transaction.

In retrospect, I think this is a huge problem for the adoption of crypto. I also think there's a huge opportunity here for companies to create better transparency and tools for governments to ensure there isn't illegal activity. The banks have invested in software systems that protect people from scams, fraud, etc. I don't see that going away any time soon. Hope this story helps other Canadians other there that want to get into crypto!

Friday, April 9, 2021

Health

Last week, my father passed away.

The last time I gave him a hug was over 4 years ago. In 2016, I went to California to chase after my dreams of becoming a startup founder and he went to the Philippines to take care of the family's properties. Between then and now, I really wish that I had done more to converse with my father. When I was younger, I spent so much time with my father learning new skills like fishing, playing all kinds of sports, swimming, driving, and drafting. As I grew older, the less we talked. He knew I was busy with my career and he focused on his own projects.

As a kid, my father was a huge inspiration for ambition and determination. He moved to Canada on his own with absolutely nothing and worked incredibly hard to build what we have today. He was always tough on me: always letting me know "that's not good enough" and I honestly believe he knew how to start that fire in me -- he knew how to motivate me -- he knew I absolutely hated disappointing people. I'll always remember him as an example of what it takes to make great things happen -- he was always dreaming big and being willing to put in the work.

My father was so full of life when we went to social gatherings. He made a lot of friends and he always made people laugh -- and best of all, he always made people feel welcome.

Diabetes Mellitus took him away from this world (he was in his early 60s). It's tough to accept that he was suffering from this affliction for years now. Today, the more I researched about diabetes, the more I started to realize how important taking care of yourself was. As someone who goes "all-in" and becomes obsessed and maniacally focused, it's very easy to fall into the trap of working long hours, not sleeping enough, and consuming food that isn't great for my health. Knowing that diabetes is hereditary and it's something that I have a high chance of developing, I've started to be more conscious of the things I'm eating and drinking.


After watching James Fung's video on reversing Type 2 Diabetes naturally, I've started to journal all my meals through MyFitnessPal. Manual input sucks, I think this is a huge opportunity for technology to step in and automatically let people know when they're in danger of the effects of diabetes.

Diabetes might've taken my father away, but it's not going to take me.

It's my duty to stay healthy so I can take care of my family and friends.

Thursday, January 21, 2021

COO

When is it the right time to bring in a COO?

For startups at a specific stage of growth and at a certain headcount, it's critical to hire a COO to help scale the organization depending on the CEO's management style. In The Hard Thing About Hard Things, Ben Horowitz goes over 1s and 2s. 

Type 1 CEOs focus more on expanding on new ideas. 
  • Elon Musk of Tesla, SpaceX
Type 2 CEOs focus more on operationalizing the business and keeping things running smoothly.
  • Tim Cook of Apple
Obviously, the above CEOs are the extremes of examples because they are currently not early-stage CEOs; however, I wanted to paint a clear picture of their mode of operation. Most early-stage startup founders can be effective within an organizational structure from 1 to 25 people. The reason for this is because the organization chart is simple and the product you're building and selling is simple. 

What does simple mean? 
  • Your first 10 customers absolutely love using your product because it solves a very distinct problem they have
  • Your early customers are from the US
  • Your engineers are high-level ICs and don't need managers (yet) or don't want to be managers (yet)
  • Life is simple when you're just executing: as YC's motto goes, building something people want
At this scale, you'll have engineering, design, sales & marketing, customer success, operations (HR). Everything feels smooth because the environment isn't complex.

Once you get to a point where you have multiple products in global markets with varying compliance requirements and your most talented people are annoyed with patterns of miscommunication, that's when inexperienced founders need to actualize the need for a COO.

Examples of these problems could include
  • ICs being confused about who to report to
  • ICs being confused about how to level up within the organization
  • ICs being confused as to whether they can impact certain decisions being made at the leadership level
  • How do we acquire world-class talent? WHO do we need now? WHO do we need in 3-6 months?
  • How do we win deals and operationalize those win conditions?

Many inexperienced early-stage startup founders believe they can solve it themselves.  Some CEOs believe being a world-class operator is easy so they'll just trip and stumble along and take the necessary time to get it right (highly recommend against this if you're venture-backed). Some CEOs believe that bringing in an operator isn't worth the cost. Some CEOs believe that bringing in an operator will have a negative impact on the company culture because they'll introduce processes that inevitably slow down all your engineers.

There are many reasons why a CEO chooses to not hire an operator. The list could go on and on.

In my opinion, not getting an operations executive basically lets the organizational problems outlined above fester. Operational executives are key to scaling because they focus on your organization's foundations which include business process design and intra-company communications. Like many examples in everyday life, you should not be building on top of a weak foundation. In addition to helping companies scale to the next stage (A ➡B ➡ C ➡ MOON), COOs can help with hiring the right people with the right ambition at the right time. At the end of the day, it's about output optimization and the stability of the business.

Just my observations.

Jaime