Building and Scaling APIs

Thaisa Fernandes
Latinx In Power
Published in
13 min readAug 15, 2023

Based on an episode ​​with Juan Shishido 🇵🇪🇯🇵

Welcome to Latinx in Power, a podcast aiming to help to demystify tech, the way we do that is by interviewing Latinx and Caribbean leaders all over the world to hear their perspective and insights.

In this episode, we spoke with Juan Shishido (he/him), a Product Manager specializing in APIs. Juan has extensive experience in building and scaling large products while enhancing the developer experience. He holds a Master’s degree in Information Management and Systems from the University of California, Berkeley. Currently, Juan works as a Product Manager at TikTok and previously was a Tweep, which is where we initially met.

During our conversation, we dived into the topics of building and scaling large products with APIs, as well as improving developer experience. Juan provided valuable insights based on his experience as a Senior Product Manager, focusing on accelerating development speed and enhancing onboarding and user experience.

Subscribe to Latinx in Power!

Apple | Google | Spotify | TuneIn | Stitcher | Deezer | PocketCasts

What does it mean to be a Latino for you?

I love this question. What comes to mind for me is that while we share similarities, we are also distinct in our own ways. Naturally, we have common histories, such as colonialism, slavery, and indigenous populations. We also share similar languages, music, and cuisine.

However, I believe that these shared elements exist at a higher level. When you go deeper and truly understand each culture, you realize that these commonalities are expressed and embraced uniquely by each group. The way in which each culture blends and personalizes these elements is what makes it truly special.

I find it fascinating to explore language, slang, and other aspects that I was previously unaware of. It has been a wonderful experience for me to engage with different people and learn about diverse Spanish-speaking cultures and communities. Witnessing both the similarities and the distinctiveness within each of our respective groups has been truly enriching.

How do you feel connected with your Peruvian side in Latin America in general?

I’ve had a complex journey with this aspect of my identity. I grew up in Miami, where the dominant Latin American culture was Cuban, and my stepfather was Cuban. As a result, I was heavily influenced by Cuban culture. I didn’t give much thought to or connect with my Peruvian side, partly due to the reasons I just mentioned. However, societal factors and internalized beliefs about indigenous heritage and the value placed on European traits also played a role.

I believe many individuals who have similar experiences, with families and acquaintances who hold certain views and make comments, can relate to what I’m expressing. I carried these internal conflicts within myself for a long time. It wasn’t until a few years ago, while I was working at Twitter, that I began to embrace and accept that part of me more fully. This acceptance wasn’t solely because of my Peruvian background but rather a broader openness and acceptance of my overall identity. On Twitter, I observed many people proudly celebrating their origins and experiences, which made me realize that all these elements and life experiences shape who we are today. This realization was a significant turning point for me.

I can relate to a similar experience during my upbringing, where I tended to favor English over Spanish in terms of language preference. However, I am now extremely grateful that I learned Spanish at home and can communicate with others. It also greatly aids me when I travel and facilitates learning other languages, such as Portuguese. Thaisa is aware of my deep appreciation for Brazil and its culture, and speaking Spanish makes it easier to establish connections. Regarding my Japanese heritage, Miami, being predominantly populated by Latin Americans, influenced the identity I formed, even if it wasn’t directly related to my Peruvian background. It was a mix of various cultural influences. I didn’t truly connect with my Japanese side until I moved to California, where I encountered a larger Japanese community and gained a better understanding of Japanese cuisine, history, and other aspects. Some of this curiosity and exploration may also stem from maturing and having a greater desire to learn more about ourselves. But, without a doubt, the place I lived in significantly shaped how I perceived myself. So, I completely agree with that perspective.

How did you first become interested in product management and API design?

I sort of stumbled into it, to be honest. When I joined Twitter, I was part of an API team, specifically working with external-facing engineering teams. Our main focus was assisting partner companies in integrating and developing solutions for end users using the APIs we provided. I developed a strong connection with our customers, developers, and the partners we collaborated with. As someone who hadn’t previously worked at a tech company and was relatively new to APIs, my primary goal was to gain the knowledge I needed to succeed. I wasn’t really thinking about the long-term trajectory at that point. However, I felt that I was performing well and effectively handling my tasks and responsibilities.

One day, during lunch, our product manager, Justin, asked me what I liked about my current role. Given my focus on working diligently within my current capacity, I hadn’t pondered the long-term implications. Nevertheless, I’m grateful that he posed the question because it prompted me to reflect on my work. Ultimately, I realized that what I truly enjoyed was helping customers in any way possible, utilizing my skills and abilities to do so.

During the early years, my role was primarily support-oriented. Assisting customers by answering their questions or resolving their issues brought me great satisfaction. As I progressed, I became more involved in API design and other endeavors aimed at enhancing the ease of use for our customers. Justin’s emphasis on customer focus during that lunch conversation made me aware of its vital importance as a product manager, something I hadn’t previously considered. This idea stuck with me, and over time, I gravitate more towards that direction. Eventually, I had the opportunity to transition into the product management role at Twitter, and that’s how I arrived at where I am today.

Looking back, I believe it would have been much more challenging if I had attempted to start as a product manager at a different company. Having the context of the product, customers, and existing goals at Twitter was immensely helpful. It allowed me to focus on other aspects of product management in which I had prior experience. For me, this context made the transition much smoother.

How do you balance the needs of different stakeholders when building a product?

I believe that there isn’t a definitive formula or a perfect way to approach this, and I’m certain others share similar thoughts. However, the way I try to tackle it is by considering the goals we have set. Typically, these goals come from leadership, and within each pillar or core team, we determine the actions we can take to help progress towards those goals or the associated metrics. So, at a high level, I approach decision-making by constantly referring back to our goals and objectives, asking if the actions we’re taking are moving us in the desired direction, towards the end state we aim to achieve.

Of course, there will be instances where unexpected issues arise, such as bugs or outages, which require shifting our attention and priorities. This is inevitable. However, if such instances occur too frequently, it’s crucial to have conversations with the team, engineering manager, and other stakeholders to explore ways to mitigate these disruptions and ensure we stay focused on our broader goals and initiatives.

I’d like to emphasize the importance of stakeholders as well. As a product manager, creating space for yourself and others to listen, have conversations, and understand what’s happening is paramount. Everyone you collaborate with brings a unique perspective on the customer, their objectives, and experiences. Gathering these stories and insights enables us to gain a clearer understanding of our customers and our objectives. Engaging in these conversations can often reveal crucial insights that allow for a deeper understanding and potential course corrections. So, always prioritize active listening and engagement with stakeholders.

What is an API, Juan?

Yeah, this is a great question. An API serves as a means for companies or individuals who are building something to connect with a service or platform provided by someone else. Let me provide some additional context. A platform or service can encompass various functionalities and offerings. It might include valuable data that external companies, developers, or partners would like to utilize. Alternatively, it may involve specific functionalities. For example, in the case of Twitter, there are different APIs or endpoints for tasks such as creating tweets, sending direct messages (DMs), or uploading media.

APIs enable external individuals to interact with or leverage the platform’s functionalities. This can involve accessing data, generating reports or analytics, or engaging in activities like creating tweets, posting on TikTok, sending DMs, managing ad campaigns, and so on. Essentially, APIs facilitate connections between companies, developers, and individuals, allowing them to interact with the platform or service programmatically.

How do you approach designing APIs?

Yeah, this is a great question. I have a lot of thoughts on this, and I’m glad I can express them here. I’ve been wanting to document and organize these ideas for a while, whether on paper or somewhere on the internet. So, here’s what I recommend or what I personally do. The first step is working backward, a concept I learned from an engineer I collaborated with at Twitter. This insight greatly influenced my approach to product development, especially within the realm of APIs. The steps I consider are as follows:

  • Understand the desired experience for end users: This refers to the consumers or individuals using the software, not the developers or partners. Gain a clear understanding of the experience you aim to create for these end users.
  • Design an API that facilitates the desired experience: Once you have a vision of the experience, focus on designing an API that simplifies the process of creating that experience. An important principle I value is minimizing the workload for customers (developers or API users). The platform or service should handle as much of the heavy lifting as possible.
  • Establish the necessary internal components: After understanding the end user experience and designing the API, shift your attention to aspects such as schema, database, and the required internal services. These components enable the creation and functioning of the APIs.

In the past, I’ve noticed that starting with the schema or database design can complicate the process of reaching the end user effectively. It can hinder the development of the necessary APIs. In the worst-case scenario, the external APIs may reflect the internal schema, which is not necessarily the most user-friendly way to interact with the platform or service. Hence, I prioritize the user experience when designing APIs.

Another crucial aspect is consistency. This applies to naming conventions and formatting, such as maintaining consistency in timestamps, date formats, and other data elements. Additionally, it’s important to establish patterns across different endpoints or APIs and maintain consistency in the structure of API responses. These consistent patterns allow users to intuitively navigate and understand different APIs. Once they learn how to use one API, they can easily apply that knowledge to others due to the consistent patterns established.

Overall, these principles and considerations shape my approach to API design.

Can you share any lessons you have learned or mistakes you have made when you were transitioning to product management or maybe doing the interview process?

Yeah, absolutely. One thing that held great importance for me, as I mentioned earlier, was focusing on the end users. I believe my team made significant progress by prioritizing their needs. Understanding what the end user requires allows us to work backward and determine which APIs can be created to empower partners or developers in delivering those desired outcomes or experiences to the end users. This alignment makes it much easier to achieve the goals we discussed earlier. In my own experiences and those shared by others, I’ve noticed that sometimes the platform or API provider sets goals without establishing a strong connection to the end user.

Even if the goal is stated as increasing a specific metric, there is often a disconnect in understanding how to enable developers to achieve that goal. Several factors, such as rate limits (which we haven’t discussed yet) or authentication, can impact this process. As an API provider, truly understanding how end users interact with the software can lead to different decisions regarding rate limits, authentication, and overall API organization.

Regarding organization, a lesson I learned while at Twitter was the importance of having a style guide or principles that guide the design approach. Speaking of organization, three points come to mind that relate to design and lessons I learned in my previous role. The first is determining whether to create a new API or add to an existing one. Three considerations in this regard are:

  • Customer’s mental model and expectations: It’s crucial to understand how customers perceive and expect the thing you’re trying to create to look and function. This understanding can stem from competitor offerings, prior experiences with related products or services, and their existing mental model. Straying too far from their mental model can lead to increased cognitive load for developers or API users. Thus, being aware of and aligning with their mental model is vital.
  • Reusability: Consider whether the creation is intended for customers, whether they are developers or end users, to reuse. For example, media elements like images, videos, or gifs may be used once or require reuse in multiple contexts. This can influence the decision of creating a new set of endpoints (a new API resource) or leveraging existing ones, depending on the expected reusability.
  • Usability: Once you understand how developers intend to use a specific feature and what they want to display, it will guide the content of the API response. For instance, if someone wants to render media, it is important to include all the necessary information in the API response instead of simply providing an ID that would require an additional API request to retrieve the media. Considering usability in the API design ensures a smoother experience for developers.

These principles contribute to effective API design and help create a more developer-friendly and intuitive experience.

Do you have any other insight to share thinking about the interview process?

I recently went through a similar experience a few weeks and months ago. I’d like to share two main points. Firstly, don’t get discouraged. I strongly believe that our mindset going into things, not just interviews but life in general, greatly influences our outcomes. While facing disappointments is inevitable, try not to let them bring you down. It’s okay to feel sad, but make an effort to learn from each experience, enabling personal growth and improvement. Maintain belief in yourself, knowing that with progress and accumulated experience, you will become better.

Secondly, it’s important to recognize that interview processes can vary significantly between companies. What may work well for one company (Company A) may not yield the same results with another company (Company B), as they may have different expectations or approaches. Understand that a company’s specific requirements or processes should not be taken as a reflection of your abilities, skills, intelligence, or experience. Stay positive, persevere, and keep striving to achieve your goals.

I’d like to emphasize the significance of having a support group. They played a crucial role throughout my own journey. Engaging in mock interviews, practicing with trusted individuals, and having conversations with supportive people, such as Cam, Sarah, and Thaisa, made a tremendous difference in keeping me motivated during the process. I am sincerely grateful to them. For those currently in the interview process, I encourage you to stay connected with your own support network and check in with them as well.

Which resource helped you in your journey that you wanted to highlight?

I don’t know if I’m an avid reader, but I have come across a few books that have greatly influenced my thinking on product management. These are the books that I frequently reference, although I haven’t read much beyond them. Let me share a bit about each book and how they have shaped my perspective.

The first book is called “Start at the End.” It offers an interesting concept by focusing on understanding the ideal state we want to achieve in the world, whether it relates to customers or our product. The author introduces the idea of identifying promoting pressures, which encourage specific actions, and inhibiting pressures, which hinder those actions. The book emphasizes intervention design, which involves creating product interventions, updates, or new features that drive behavior change. I appreciate the concept of working backward from the end goal and recognizing the importance of addressing promoting and inhibiting pressures to move closer to that goal.

The second book that made a lasting impression on me is “Demand-Side Sales.” Instead of building a product and then searching for customers, the book emphasizes deeply understanding customers’ problems, or what the author refers to as their struggles. The focus shifts to building products that help customers make progress on their journeys. It transforms the conversation from simply recommending, “Hey, try out this product,” to understanding and addressing specific difficulties customers face. By presenting a solution that directly tackles their challenges, it changes the mindset of those considering adopting or using the product. The book highlights that opportunities for products or businesses lie in understanding and addressing customer struggles.

The third book, “The Mom Test,” provides valuable guidance on how to ask effective questions when engaging with customers. The book emphasizes avoiding compliments, fluff, and even lies about one’s product, idea, or intended direction. I’ve learned that framing questions like, “Hey, what do you think about this idea?” can lead to biased or sugar-coated responses because people generally don’t want to hurt your feelings. “The Mom Test” has helped me develop a better approach to question generation, phrasing, and uncovering customers’ real problems and concerns. It also aids in assessing the magnitude of a problem. For instance, someone may express dislike for a certain issue, but upon further questioning about workarounds or actions taken, their response may reveal that the problem is not as significant as initially stated. This book has been instrumental in improving my ability to understand customers’ true needs.

Overall, these three books have significantly influenced my thinking as a product manager, providing valuable insights and shaping my approach to product development and customer engagement.

I hope you enjoyed the podcast. We will have more interviews with amazing Latinx leaders the first Tuesday of every month. Check out our website Latinx In Power to hear more. Don’t forget to share comments and feedback, always with kindness. See you soon.

📩 Hey you, join the Latinx In Power email list!

We send emails no more than twice a month. Click here to subscribe!

Find out more at the Website, Instagram and Twitter. If you’re looking for goodies, check out our online store.

--

--

Thaisa Fernandes
Latinx In Power

Program Management & Product Management | Podcast Host | Co-Author | PSPO, PMP, PSM Certified 🌈🌱