Polyglot Software Development
We’ve been doing Software Development and Architecture work for a while at Snowpal, and currently have several B2B and B2C products in production. In this podcast, we’ll share our experiences on a regular basis to help you & your teams build great software. The topics covered in this podcast will include Product Management, Project Management, Architecture, Development, Deployment, Security, Release Management, Sales, Marketing, Advertising, and just about everything else an ambitious, fast growing startup based out of the US is likely to be involved in. So, join us. Let’s become better!
Episodes

Tuesday Feb 20, 2024
Software Supply Chain Security and a Decoupled Architecture (feat. Tracy Ragan)
Tuesday Feb 20, 2024
Tuesday Feb 20, 2024
Tracy Ragan discusses software supply chain management and the importance of generating and consuming Software Bill of Materials (SBOMs) in decoupled architectures. She explains the challenges of managing libraries and dependencies in microservices and the need for aggregated SBOMs. Tracy emphasizes the importance of rapid response to vulnerabilities and the value of SBOMs in facilitating this response. She also discusses the requirements and industries for SBOMs and the role of SBOMs in analyzing and securing open source and commercial software.
Tracy introduces DeployHub as a DevSecOps evidence store that helps teams gain confidence in the use and consumption of open source software and enables rapid response to vulnerabilities.
Takeaways
Software supply chain management involves generating and consuming SBOMs to track libraries and dependencies in decoupled architectures.
In decoupled architectures, it is important to generate SBOMs for each microservice and aggregate them to understand the overall software supply chain.
SBOMs should be generated for every build and provide visibility into the vulnerabilities and dependencies of each component.
The quality of SBOMs is determined by their ability to facilitate rapid response to vulnerabilities and enable collaboration among teams.
While SBOMs are not currently required in all industries, their importance is increasing, especially in sectors like government and fintech. Understanding the impact of vulnerabilities is crucial for effective response and prioritization.
Rapid response to vulnerabilities is essential to minimize the potential impact on production environments.
Centralized data and information are necessary for effective vulnerability management.
Fixing vulnerabilities in open source software can be challenging due to the lack of accountability and maintenance.
Controlling open source consumption and managing the software supply chain are complex tasks.
DeployHub provides a DevSecOps evidence store that helps teams gain confidence in the use of open source software and enables rapid response to vulnerabilities.
Chapters
00:00 Introduction to Software Supply Chain Management
03:22 Understanding Architecture in the Context of SBOMs
06:12 Configuration Management in Monolithic Applications
07:39 Challenges of Decoupled Architecture in Microservices
09:20 The Need for SBOMs in Decoupled Architectures
11:15 Generating Aggregated SBOMs for Microservices
13:24 Generating SBOMs for Each Microservice
15:23 Generating SBOMs for Every Build
17:15 Managing Libraries and Dependencies in Decoupled Architectures
19:31 The Importance of Consuming SBOM Data
22:30 Generating SBOMs with Tools
24:28 The Format and Consumption of SBOMs
27:55 The Importance of Consuming and Analyzing SBOM Data
29:43 Requirements and Industries for SBOMs
33:29 SBOMs for Open Source and Commercial Software
36:01 The Role of SBOMs in Rapidly Responding to Vulnerabilities
39:05 The Value of SBOMs in Rapid Response Systems
43:13 Defining the Quality of SBOMs
44:06 Understanding the Impact of Vulnerabilities
46:03 The Importance of Rapid Response
48:35 The Need for Centralized Data and Information
50:27 Challenges in Fixing Vulnerabilities
52:14 The Accountability of Open Source Software
53:41 The Difficulty of Controlling Open Source Consumption
55:16 Introduction to DeployHub
57:43 Managing the Software Supply Chain
Tracy Ragan's Links:
Linkedln Profile
DeployHub
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Monday Feb 05, 2024
Software Reusability: Build once, build it well and make it customizable
Monday Feb 05, 2024
Monday Feb 05, 2024
In this podcast episode, Krish compares the Instacart and Wegmans apps to identify commonalities and similarities. He discusses the reusability and integration of backend systems, highlighting the benefits of leveraging existing solutions rather than reinventing the wheel. Krish also explains Snowpal's business model, which focuses on selling software and licenses to other companies. He showcases the integration of multiple products within the Snowpal app and emphasizes the importance of balancing verticals and horizontals in software development.
Takeaways
Leveraging existing solutions and reusing backend systems can save time and resources in software development.
Selling software and licenses can be a successful business model, allowing companies to provide ready-made solutions to other businesses.
Integrating multiple products within an app can provide a comprehensive solution for users.
Balancing verticals (specific solutions) and horizontals (platform layers) is crucial for successful software development.
Chapters
00:00 Introduction and Context
02:02 Comparison of Instacart and Wegmans Apps
13:00 Reusability and Integration of Backend Systems
17:20 Snowpal's Business Model
21:12 Integration of Multiple Products in SnowPAL App
26:10 Reuse of SnowPAL's Web Application
28:37 Balancing Verticals and Horizontals in Software Development
29:07 Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Friday Jan 26, 2024
Teradata (1/N): Getting Started (Create Environment, Explore Use Cases)
Friday Jan 26, 2024
Friday Jan 26, 2024
In this podcast episode, Krish explores Teradata from scratch. He starts by introducing Teradata as a complete cloud analytics and data platform, suitable for building large-scale data warehousing applications. He explains the concepts of data warehousing, data lakes, and data marts. Krish then explores Teradata's platform and products, including Teradata Vantage and ClearScape Analytics. He demonstrates how to get started with Teradata by creating an environment and exploring the JupyterLab interface. Krish creates tables, loads data, and runs queries in Teradata, providing hands-on experience and learning along the way. Krish explores the Teradata platform and its functionalities. He starts by troubleshooting a query and identifying the issue. Then, he runs basic queries to demonstrate the SQL syntax. Krish also discusses the availability of third-party plugins and explores some of them. Finally, he concludes the episode by discussing the next steps for further exploration and learning.
Takeaways
Teradata is a complete cloud analytics and data platform suitable for building large-scale data warehousing applications.
Data warehousing, data lakes, and data marts are important concepts to understand in the context of Teradata.
Teradata offers a range of products and platforms, including Teradata Vantage and ClearScape Analytics.
JupyterLab and Jupyter Notebooks can be used to interact with Teradata and perform data analysis and exploration.
Creating tables, loading data, and running queries are essential tasks in Teradata. Teradata is a powerful platform for data analysis and management.
Troubleshooting queries is an essential skill for working with Teradata.
Basic SQL syntax can be used to run queries on Teradata.
Third-party plugins can enhance the functionality of Teradata.
Chapters
00:00 Introduction to Teradata
01:16 Understanding Data Warehousing and Data Lakes
03:35 Data Marts and Teradata
04:26 Exploring Teradata's Platform and Products05:41Getting Started with Teradata
06:25 Teradata Vantage and ClearScape Analytics
07:57 Understanding JupyterLab and Jupyter Notebooks
19:14 Exploring JupyterLab Extensions
28:18 Creating Tables and Loading Data in Teradata
48:02 Running Queries in Teradata
53:49 Troubleshooting Query
55:14 Running Basic Queries
56:00 Third-Party Plugins
57:14 Exploring Plugins
58:18 Next Steps and Further Exploration
58:45 Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Thursday Jan 25, 2024
Fundamentals of Prospecting with a focus on B2B Sales (feat. Dr. Deva Rangarajan)
Thursday Jan 25, 2024
Thursday Jan 25, 2024
In this podcast episode, Dr. Deva Rangarajan discusses the topic of prospecting in sales. The conversation covers various aspects of prospecting, including the changes in prospecting over time, the difference between advertising and marketing, and the role of sales and marketing in outbound and inbound prospecting. The discussion also touches on the effectiveness of cold calling and cold emailing, the challenges of purchasing mailing lists, and the importance of automation in sales. The episode concludes with a recap of the main points discussed and a preview of the next episode, which will delve into a practical example of prospecting.
Takeaways
Prospecting in sales involves both outbound and inbound approaches.
The role of sales and marketing teams is crucial in both outbound and inbound prospecting.
Cold calling and cold emailing can still be effective in certain scenarios and industries.
Purchasing mailing lists may not be a reliable or recommended approach.
Automation plays a significant role in streamlining sales processes.
Open rates and response rates in email campaigns can vary, and it is important to set realistic expectations.
Chapters
00:00 Introduction
01:24 Subjectivity in Sales
06:42 Sales Prospecting 101
09:31 Changes in Prospecting
10:33 Difference Between Advertising and Marketing
12:26 Sales and Marketing for the Long Term
15:24 Inbound and Outbound Prospecting
18:43 Approaching Outbound and Inbound Differently
22:03 Role of Sales and Marketing in Outbound and Inbound
23:37 Assessing Success in Sales and Marketing
25:26 Filtering Leads in Inbound Marketing
26:52 Role of Sales and Marketing Teams
27:36 Inbound and Outbound as a Combination
29:29 Outbound Sales Campaigns
30:51 Cold Calling and Cold Emailing
32:43 Effectiveness of Cold Calling in 2024
33:31 Feasibility of Cold Calling in Certain Scenarios
34:36 Cold Calling in Specific Industries or Demographics
36:39 Cold Emailing and LinkedIn Prospecting
38:17 Challenges with Purchasing Mailing Lists
39:23 Quality and Accuracy of Mailing Lists
42:42 Considerations for Small Organizations
43:39 Importance of Automation in Sales
44:57 Open Rates and Response Rates in Email Campaigns
49:09 Recap and Practical Examples
53:49 Closing Comments
55:51 Next Steps and Example
58:14 Conclusion
Dr. Rangarajan's Links
LinkedIn Profile
Ball State Sales Center
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Thursday Jan 25, 2024
Using diagrams to effectively communicate with Teams, Clients & Stakeholders
Thursday Jan 25, 2024
Thursday Jan 25, 2024
In this podcast, Krish discusses the importance of using diagrams to effectively communicate within teams. He shares examples of different types of diagrams, including sequence diagrams, flowcharts, and mind maps. Krish emphasizes the productivity and efficiency gained by using digital tools to create diagrams, rather than manually drawing them. He also highlights the value of diagrams in conveying complex information and facilitating understanding. Overall, the podcast emphasizes the benefits of incorporating diagrams into team communication and decision-making processes.
Takeaways
Diagrams are a powerful tool for effective communication within teams.
Using digital tools to create diagrams increases productivity and efficiency.
Different types of diagrams, such as sequence diagrams, flowcharts, and mind maps, can be used to represent different types of information.
Diagrams help convey complex information and facilitate understanding.
Chapters
00:00 Introduction to Diagrams
04:45 Using Diagrams to Communicate Within Teams
06:08 Using Sequence Diagrams
22:44 Using Flowcharts
32:09 Using Mind Maps
35:33 Summary and Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Thursday Jan 25, 2024
Thursday Jan 25, 2024
In this podcast, Krish explores the process of digital analysis and how to take the analysis forward. He discusses different approaches to analyzing product usage, including general product usage analysis, client-specific product usage analysis, feature-specific product usage analysis, ad hoc analysis, and usage pattern analysis. Krish emphasizes the importance of communicating the analysis to the product team and translating it into meaningful requirements for the engineering team.
Takeaways
Digital analysis involves analyzing product usage and user behavior.
Different approaches to analysis include general product usage analysis, client-specific product usage analysis, feature-specific product usage analysis, ad hoc analysis, and usage pattern analysis.
Communicating the analysis to the product team is crucial for making informed decisions.
Translating the analysis into meaningful requirements helps guide the engineering team.
Chapters
00:00 Introduction and Recap
03:58 Communicating Analysis to Product Team
04:59 General Product Usage Analysis
09:34 Client Specific Product Usage Analysis
14:51 Feature Specific Product Usage Analysis
20:39 Ad Hoc Analysis
25:25 Usage Pattern Analysis
31:03 Translating Analysis into Requirements
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Tuesday Jan 23, 2024
Tuesday Jan 23, 2024
This podcast episode explores digital analytics tools, with a focus on FullStory. The host provides an overview of digital analytics and its importance in understanding user behavior and improving online marketing strategies. The features and configuration of FullStory are discussed, including the ability to analyze user activity, track frustrated sessions and rage clicks, and use UTM campaigns for tracking. The episode also touches on the use of DataDog for digital analytics and highlights the various aspects that can be analyzed, such as session length, user behavior, and conversion rates. The episode concludes with the importance of using digital analytics to improve business performance.
Takeaways
Digital analytics tools help gather, analyze, and interpret data from digital sources to understand user behavior and improve online marketing strategies.
FullStory is a digital analytics tool that provides detailed insights into customer behavior, allowing for optimization of webpages, marketing campaigns, and online initiatives.
Features of FullStory include analyzing user activity, tracking frustrated sessions and rage clicks, and using UTM campaigns for tracking.
Session length and active time are important metrics to consider for user engagement and scalability.
Frustrated sessions and rage clicks can provide insights into user experience issues and areas for improvement.
UTM campaigns and sources can be used to track and analyze the performance of digital marketing campaigns.
DataDog is another tool that can be used for digital analytics and offers features for monitoring and observability.
Digital analytics can be customized to analyze different aspects such as user behavior, page performance, and conversion rates.
Using digital analytics can help businesses improve their online presence, understand user needs, and make data-driven decisions for growth and optimization.
Chapters
00:00 Introduction and Context
01:27 Overview of Digital Analytics Tools
03:49 Exploring FullStory
07:14 Configuring FullStory
09:40 Analyzing User Activity in FullStory
13:13 Additional Features of FullStory
19:00 Importance of Session Length and Active Time
20:04 Optimizing User Experience and Scalability
21:45 Frustrated Sessions and Rage Clicks
22:33 Understanding Frustrated Sessions and Rage Clicks
23:37 UTM Campaigns and Sources
26:34 Using UTM Codes for Tracking
28:38 Customizing Analysis Parameters
29:42 Exploring DataDog for Digital Analytics
31:56 Analyzing Different Aspects of Digital Analytics
38:00 Using Digital Analytics to Improve Business
39:16 Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Monday Jan 22, 2024
Monday Jan 22, 2024
In this podcast, Krish discusses how each individual represents not only themselves but also a larger population. He emphasizes the importance of credibility, professionalism, clear communication, and commitment to deliverables. Krish also highlights the significance of reputation and how it can impact others who share similarities. He advises learning the paradigms of the organization and reacting gracefully to transitions. Krish concludes by reminding listeners that a job does not define their worth as a person.
Takeaways
Representing oneself also means representing a larger population.
Credibility is crucial in building trust and reputation.
Clear communication and professionalism are essential in the workplace.
Commitment to deliverables and meeting deadlines is important.
Helping others and reacting gracefully to transitions can have a positive impact.
A job does not define an individual's worth.
Chapters
00:00 Introduction
00:58 Representing a Larger Population
03:25 Changes in the Hiring Process
08:05 Credibility
09:58 Location and Availability
12:17 Professionalism
13:19 Communication
15:25 Commitment to Deliverables
16:48 Reputation
18:31 Learning Organizational Paradigms
19:53 Confidence
20:58 Helping Others
23:01 Reacting to Transitions
25:20 Job Does Not Define You
26:39 Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Monday Jan 22, 2024
10+ ways to improve Employee Retention
Monday Jan 22, 2024
Monday Jan 22, 2024
In this podcast episode, Krish discusses employee retention and the overall employee experience. He shares insights and tips based on his experience in software development and running a startup. The conversation covers various topics such as job descriptions, recruiter reach out, interview processes, communication and feedback, onboarding, promotions and pay raises, time off policies, equipment, happiness check, training, engagement, restructuring, and moving on. Krish emphasizes the importance of treating employees as individuals and creating a positive work environment.
Takeaways
Job descriptions should be engaging and reflect the company culture.
Recruiters should reach out to candidates in a personalized and clear manner.
The interview process should be well-defined and relevant to the role.
Regular communication and feedback are crucial for employee satisfaction.
Onboarding should be seamless and include necessary resources and support.
Treating contractors and consultants with respect and clarity is important.
Promotions, pay raises, and titles should be personalized to meet individual preferences.
Time off policies should be flexible and considerate of employees' needs.
Providing the right equipment and tools for work enhances productivity and satisfaction.
Engagement activities should be tailored to the team's preferences and promote a positive work culture.
Restructuring should be handled with empathy and transparency.
When moving on, employees should give notice and assist with the transition process.
Chapters
00:00 Introduction
01:42 Job Description
04:46 Recruiter Reach Out
08:52 Interview Process
12:23 Communication and Feedback
13:21 Onboarding Process
15:21 Treating Contractors and Consultants
17:05 Feedback
18:05 Promotions, Pay Raises, and Titles
20:24 Time Off
22:01 Equipment
25:31 Happiness Check
27:00 Training
28:30 Engagement
30:59 Restructuring
34:36 Moving On
35:36 Conclusion
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators

Friday Jan 19, 2024
Friday Jan 19, 2024
In this episode, Krish and Kramer discuss the impact of the automated economy on global economic growth. They explore the differences in the adoption of automated economy between countries and the role of culture in this process. They also identify the countries that are likely to have the largest impact on the automated economy, including India, African countries, South Asian countries, and Latin American countries. The conversation explores the impact of the automated economy on different countries and regions. It discusses the growth potential of India, Africa, South Asia, Latin America, China, Europe, Australia, and New Zealand. The chapters also highlight the relationship between GDP and the automated economy. They explore the contribution of automated economy to GDP growth and how it is not directly proportional. They also discuss the importance of the percentage of automated economy and its contribution to GDP. Additionally, they delve into the concept of accelerating economic growth through automation and how the growth potential of an economy is directly proportional to the level of automation. Finally, they summarize the key takeaways, including the role of automated economy in driving economic growth and the importance of understanding the cultural and political perspectives.
Takeaways
The automated economy is driving global economic growth, with the GDP generated from the automated economy increasing from $13.5 trillion in 2018 to $53.3 trillion in 2022.
The adoption of automated economy varies between countries, with factors such as disposable income, government support, and cultural readiness playing a role.
Countries like India, African countries, South Asian countries, and Latin American countries have the potential for significant growth in the automated economy.
The growth of the automated economy is driven by consumer demand for convenience and personalization, as well as the ability of businesses and governments to implement and support automation. India has a high growth capability due to automation and a focus on middle-income growth.
Africa has the potential to become a stellar growth region, but disposable income growth may hinder its economic impact.
China may struggle with middle-income growth, resulting in a lower impact from the automated economy.
Latin America has the economic capability for growth, but cultural adoption may slow down the impact of automation.
The growth potential of different countries and regions is not directly proportional to their GDP. The contribution of automated economy to GDP growth is not directly proportional.
The percentage of automated economy and its contribution to GDP is an important factor to consider.
Automation can accelerate economic growth by increasing the expansion capability of an economy.
The growth potential of an economy is directly proportional to the level of automation.
Chapters
00:00 Introduction
11:03 Differences in Automated Economy between Countries
19:14 Culture and Automated Economy
35:27 Countries with the Largest Impact on Automated Economy
42:55 The Impact of the Automated Economy on Different Countries
44:20 China's Struggle with Middle Income Growth
45:38 India's Growth Capability Due to Automation
48:01 The Growth Potential of Latin America
53:23 The Growth Potential of Western & Rest of Europe
55:02 The Growth Potential of Australia & New Zealand
58:02 The Impact of GDP & Automated Economy
01:20:03 Accelerating Economic Growth through Automation
01:23:12 Summary
Snowpal Products
Backends as Services on AWS Marketplace
Mobile Apps on App Store and Play Store
Web App
Education Platform for Learners and Course Creators