Software Development, Finance and Economics
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 Mar 05, 2024
Scaling High Performing, Multinational Teams (feat. Andy Hilliard)
Tuesday Mar 05, 2024
Tuesday Mar 05, 2024
In this podcast episode, Krish Palaniappan interviews Andy Hilliard, CEO of Accelerance, about offshoring and building effective globally distributed teams. They discuss the importance of understanding cultural differences in offshoring, the challenges of offshoring for different types of positions, and navigating the risks of offshoring with defined vs undefined vision. In this conversation, Andy Hilliard discusses the challenges and trends in outsourcing software development to offshore service providers. He highlights the importance of having a strong product ownership role and the need for both clients and service providers to invest in developing product ownership capabilities. Andy also emphasizes the proliferation of overnight service providers and the importance of vetting and integrating offshore teams into the client's ecosystem. He discusses the challenges of understanding cultural differences and the need for clients to spend time overseas to build relationships and trust. Finally, he introduces his book, 'Synergia,' which provides a blueprint for building effective globally distributed teams in the new era of software development.
Takeaways
Understanding cultural differences is crucial in offshoring to ensure effective communication and collaboration.
Different types of positions may have different suitability for offshoring, and it is important to choose the right offshore partner based on their expertise and track record.
Offshoring with a clearly defined vision is more straightforward, while offshoring to fill a knowledge gap requires a partner with subject matter expertise.
To navigate the risks of offshoring, it is important to become a servant leader to the service provider and integrate them into your environment. Clients and service providers need to invest in developing strong product ownership capabilities.
Vetting and integrating offshore teams into the client's ecosystem is crucial for successful outsourcing.
Understanding cultural differences is essential for effective collaboration with offshore teams.
Building relationships and trust through spending time overseas can lead to better outcomes in outsourcing.
The book 'Synergia' provides insights and strategies for building effective globally distributed teams in software development.
Chapters
00:00 Introduction and Background
06:42 Understanding Cultural Differences in Offshoring
13:01 Offshoring for Different Types of Positions
22:15 Navigating the Risks of Offshoring
28:21 The Role of Product Ownership in Offshore Service Providers
30:13 Challenges of Outsourcing to Service Providers
32:43 The Proliferation of Overnight Service Providers
36:00 The Importance of Leadership Positions in Service Providers
38:22 Understanding Cultural Differences in Offshoring
41:04 The Importance of Trust and Commitment in Offshore Relationships
45:42 The Book: Synergia - A Blueprint for Building Effective Globally Distributed Teams
Andy Hilliard (Accelerance)
Linkedln
Company Website
Book: "Synergea: A Blueprint for Building Effective, Globally Distributed Teams in the New Era of Software Development"
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

Wednesday Feb 28, 2024
Evolution of Software Development: Summary
Wednesday Feb 28, 2024
Wednesday Feb 28, 2024
In this conversation, Krish discusses the evolution of software development over the past two decades. He covers various topics such as technology changes, work styles, shorter attention spans, the developer vs engineer mindset, and the importance of passion and commitment in one's career. Krish emphasizes the need for adaptability and embracing change in the software development industry.
Takeaways
Technology in software development is constantly evolving, particularly in front-end development.
Work styles have changed, with remote work becoming more prevalent and flexible working hours.
Shorter attention spans have become a challenge in design discussions and meetings.
Developers need to adopt an engineering mindset and approach problems with fresh perspectives.
Passion and commitment are crucial for long-term career fulfillment in software development.
Chapters
00:00 Introduction
01:33 Technology Changes
05:19 Shorter Attention Spans
06:20 Developer vs Engineer Mindset
08:30 Passion and Commitment
10:10 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

Wednesday Feb 28, 2024
Impact of layoffs - letting go and being let go (feat. Serkan Durusoy)
Wednesday Feb 28, 2024
Wednesday Feb 28, 2024
In this episode, Serkan Durusoy shares his experiences and insights on the impact of layoffs, both from a leadership perspective and as someone who has been let go. He emphasizes the importance of proactive planning and avoiding surprises in the layoff process. Serkan also discusses the need for individuals to manage their attachment to a company and build a resilient mindset to navigate layoffs. He highlights the responsibility of employees to ensure job security by continuously developing their skills and staying up-to-date in their field.
Takeaways
Proactive planning and avoiding surprises are crucial in the layoff process.
Managing attachment to a company and building a resilient mindset can help navigate layoffs.
Employees should take responsibility for their job security by continuously developing their skills and staying up-to-date in their field.
Layoffs should be conveyed with thoughtfulness and care, preferably by someone familiar to the affected employees. Genuine interest and continuous learning are crucial for long-term success in the software industry.
The rise of generative AI may impact job security, but it also presents opportunities for providing unique value.
Problem-solving skills are highly valuable and should be prioritized alongside technical skills.
Staying relevant and adaptable is essential in a rapidly changing industry.
Recognizing the uncertainty of job security and being prepared for potential layoffs is important for all professionals.
Finding the crossroads of passion, skills, and market demand is key to long-term career satisfaction.
It's never too late to change careers or learn new skills.
Recognizing the value of tools and focusing on providing value can lead to success in any role or job.
Chapters
00:00 Introduction and Background03:30 Leadership Perspective on Layoffs09:12 Factors to Consider in Layoff Decisions14:20 Managing Expectations and Attachment to the Company21:34 Conveying Layoff News to Employees25:27 Building a Resilient Mindset28:26 Responsibility and Reaction to Layoffs34:00 Perspective on Job Security36:21 Impact of Layoffs and Perspective on Loss43:41 Building Skills and Being Up-to-Date44:28 The Importance of Genuine Interest and Continuous Learning45:32 The Rise of Generative AI and Its Impact on Job Security46:58 Providing Quantitative Value to Employers48:30 The Moving Target of Value and the Need for Adaptability49:24 Adapting to Upcoming Challenges and Staying Relevant50:46 The Importance of Problem Solving Skills51:12 The Responsibility to Stay Valuable in Jobs53:17 The Continuous Learning Mindset and Recognizing Limitations55:22 The Diminished Value of Coding Skills56:31 The Importance of Problem Solving Skills in the Age of Generative AI58:50 Recognizing the Uncertainty of Job Security59:30 Recommendations for Recent Graduates and Experienced Professionals01:00:47 Finding the Crossroads of Passion, Skills, and Market Demand01:03:25 Overcoming the Trap of Feeling Too Old to Change Careers01:06:02 Recognizing the Value of Tools and the Importance of Providing Value01:09:49 Recognizing the Difficulty of Different Roles and Jobs01:12:21 Avoiding Layoffs and Recognizing the Signs01:14:09 Closing Remarks and Final Thoughts
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 Feb 23, 2024
Automated Economy and its influence on India's growth (feat. David Kramer)
Friday Feb 23, 2024
Friday Feb 23, 2024
In this podcast episode, Kramer discusses his recent travels and the evolution of automation in traditional services. He highlights the excitement of witnessing the accelerated adoption of automation in different countries. The conversation then shifts to the most delicious vegetarian food in New Zealand. The hosts recap the previous podcast and set the context for the discussion on solving problems in the automated economy. They explore the changing perspectives on working for large organizations and the importance of passion and curiosity in problem-solving. The value of creativity in finding solutions and the potential of applying solutions from one country to another are also discussed.
Takeaways
The automated economy is rapidly evolving, with traditional services being hyper-automated and integrated into the digital economy.
Entrepreneurs should be passionate about the problems they want to solve and think outside the box to find innovative solutions.
Creativity is crucial in problem-solving, even when solutions have been developed elsewhere. Each solution should be tailored to the specific context and needs of the target market.
The automated economy offers opportunities for entrepreneurs to solve problems and generate income in ways that were not possible before. The automated economy enables more fluid and efficient economic transactions, allowing entrepreneurs to solve problems and accelerate payment systems.
Entrepreneurs can build solutions for other countries without physical presence, leveraging technology and digital enablement.
Localization is crucial in building successful solutions, considering cultural norms, economic conditions, and ethical considerations.
Understanding the transactional states and evolving solutions based on market conditions are key to success in the automated economy.
Long-term business strategy should focus on embracing automation, hyper-personalization, and data-driven decisions.
Chapters
00:00 Introduction and Travel Experiences
01:16 The Evolution of Automation in Traditional Services
03:21 Delicious Vegetarian Food in New Zealand
04:41 Recap of Previous Podcast and Context Setting
07:06 Changing Perspectives on Working for Large Organizations
08:01 Identifying Problems to Solve in the Automated Economy
08:30 The Importance of Passion and Curiosity in Problem Solving
09:29 Understanding the Automated Economy and Applying Knowledge
10:22 Solving Problems in the Retail Sales Space
12:18 Taking Solutions from One Country to Another
13:47 Gaining Knowledge and Thinking Outside the Box
15:39 Applying Solutions to Similar Problems in Different Economies
19:10 Solving Problems Locally vs. Being Creative
22:24 The Importance of Passion and Creativity in Problem Solving
23:42 The Nuances of Localizing Solutions
25:29 The Significance of Creativity in Solution Building
28:32 The Value of Innovation in Problem Solving
30:12 The Similarity and Uniqueness of Problems and Solutions
34:52 The Differences in Problem Solving Across Economies
36:45 The Potential of Solving Problems in Different Nations
38:15 Solving Economic Transactions
41:31 Food Delivery in Different Cultures
42:49 Building Solutions Without Physical Presence
44:44 Mitigating Mistakes in Global Business
45:26 Understanding the Transactional States
46:24 Evolving Solutions for Different Markets
47:40 Long-Term Business Strategy in the Automated Economy
48:41 Taking Advantage of Automation
50:07 Ethics and Localization in Building Solutions
53:04 Impact of Automated Economy on Other Industries
56:32 Importance of Localization in Solutions
01:00:32 Automated Economy in India
Cooperative Computing:
LinkedIn: David Kramer
Company Website
"How AI is Disrupting Traditional Business Models"
Snowpal's 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 Feb 23, 2024
Evolution of Software Development (feat. Jason Crum)
Friday Feb 23, 2024
Friday Feb 23, 2024
In this episode, Krish and Jason discuss the evolution of software development and the changes they have witnessed over the years. They reflect on their first lines of code and compare the differences between then and now. They also explore the pace of change in technology and the challenges it presents for developers. The conversation touches on the importance of being a lifelong learner and staying up to date with new languages and frameworks. They also discuss the benefits and drawbacks of specializing in a specific language or framework and the role of opinions and design patterns in different languages. Krish and Jason go on to discuss the evolution of software development and the challenges and opportunities it presents. They explore the importance of flexibility in programming languages and the need for developers to have an open mind and adapt to new frameworks and technologies. They also delve into the difference between a developer and an engineering mindset, emphasizing the value of problem-solving skills and self-learning. The conversation touches on attention spans and generational shifts, highlighting the impact of smartphones and social media on society. Finally, they discuss the importance of finding fulfillment in one's work and making productive use of time.
Takeaways
Software development has evolved significantly over the years, with new languages, frameworks, and techniques constantly emerging.
Being a lifelong learner and staying up to date with new technologies is crucial for success in the field.
Specializing in a specific language or framework can provide job security, but it may limit career opportunities in the long run.
Opinions and design patterns vary across different languages, and developers should be open to learning and adapting to new approaches. Developers should be open-minded and adaptable to new frameworks and technologies.
Problem-solving skills and self-learning are essential for success in software development.
The rise of smartphones and social media has negatively impacted attention spans and the ability to focus.
Finding fulfillment in one's work and making productive use of time are important for personal and professional growth.
Chapters
00:00 Introduction and Background
01:19 The Evolution of Software Development
13:59 The Pace of Change in Technology
24:53 Specializing in a Language or Framework
29:12 Opinions and Design Patterns in Different Languages
31:25 The Importance of Flexibility in Programming Languages
36:25 Developer vs Engineering Mindset
41:56 Attention Spans and Generational Shifts
57:24 The Detrimental Effects of Smartphones and Social Media
01:02:07 Finding Fulfillment in Software Development
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 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