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
Thursday Jan 11, 2024
Thursday Jan 11, 2024
In this podcast, the host explores Confluent Cloud, a fully managed Kafka service. The host shares their experience with RabbitMQ and Kafka and explains the value of using a managed service like Confluent Cloud. They walk through the process of signing up for an account, creating a cluster, generating API keys, and creating topics. The host also discusses the use of connectors and introduces ksqlDB and Apache Flink. They explore cluster settings, message consumption, and additional features of Confluent Cloud. The podcast concludes with a summary of the topics covered.
Takeaways
Confluent Cloud is a fully managed Kafka service that provides added value through pre-built connectors and ease of use.
Creating a cluster, generating API keys, and creating topics are essential steps in getting started with Confluent Cloud.
ksqlDB and Apache Flink offer stream processing capabilities and can be integrated with Confluent Cloud.
Cluster settings, message consumption, and additional features like stream lineage and stream designer enhance the functionality of Confluent Cloud.
Using a managed service like Confluent Cloud allows developers to focus on solving customer problems rather than managing infrastructure.
Chapters
00:00 Introduction02:25 Exploring Confluent Cloud09:14 Creating a Cluster and API Keys11:00 Creating Topics13:20 Sending Messages to Topics15:12 Introduction to ksqlDB and Apache Flink17:03 Exploring Connectors25:44 Cluster Settings and Configuration28:05 Consuming Messages35:20 Stream Lineage and Stream Designer38:44 Exploring Additional Features44:21 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
Wednesday Jan 10, 2024
2 engineers discussing many things about Software Development (feat. Serkan Durusoy)
Wednesday Jan 10, 2024
Wednesday Jan 10, 2024
In this conversation, Serkan Durusoy, the head of engineering at Okra, discusses his background, living on a sailboat, and his passion for engineering. He emphasizes the importance of creativity and art in engineering and how personal background and upbringing can influence problem-solving approaches. Serkan also explores the balance between individual approaches and the need for alignment on outcomes in engineering teams. He highlights the role of personal relationships and the challenges of making tough decisions as a manager. In this conversation, Krish and Serkan discuss various topics related to software engineering and career development. They explore managing differences as a manager, the challenges of remote work, choosing a software engineering career, applying opinions to circumstances, and the impact of software engineering on the world.
Takeaways
Engineering is a creative and artistic field that allows for the creation of solutions and the impact on users.
Personal background and upbringing can shape problem-solving approaches in engineering.
Balancing individual approaches and aligning on outcomes is crucial for effective teamwork in engineering.
Personal relationships and emotions should be considered, but the focus should be on the problem and desired outcome. As a manager, it is important to approach conflicts with the goal of amicably solving the problem and moving things forward.
Remote work requires intentional communication and over-communication to compensate for the lack of social cues and body language.
Choosing a software engineering career can be a shortcut to making a visible impact in the world, but it requires a lifelong commitment to learning and dealing with frustrations.
Opinions and learnings should be applied to specific circumstances rather than taken as absolute truths.
Software engineering has the potential to make a significant impact on the world and offers opportunities for personal and professional growth.
Chapters
00:00 Introduction and Background
01:37 Living on a Sailboat and Engineering
03:25 Favorite Food and Cultural Differences
05:29 Engineering as Art and Creativity
09:42 The Influence of Upbringing on Engineering
11:14 Differences in Approaching Engineering Problems
16:36 The Role of Personal Background in Engineering
19:22 Balancing Individual Approaches in Engineering
25:14 Navigating Differences in Engineering Approaches
28:59 The Importance of Alignment on Outcomes
31:45 Balancing Personal Relationships and Engineering Decisions
36:43 Prioritizing the Problem and Outcome
40:12 Making Tough Decisions as a Manager
40:40 Managing Differences as a Manager
49:16 Challenges of Remote Work
59:13 Choosing a Software Engineering Career
01:01:07 Applying Opinions to Circumstances
01:03:21 Software Engineering as a Career
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 09, 2024
Tuesday Jan 09, 2024
Prasanna Veeraswamy shares his unique experience of traveling to every country in the world and the personal growth and education he gained from his travels. He emphasizes the importance of living in a place to truly understand its culture and build relationships. Prasanna also discusses the impact of travel on food perceptions and the accessibility of travel and learning opportunities for everyone. In this conversation, Prasanna Veeraswamy shares his experiences and insights from traveling to different countries. He discusses the number of countries and cities he has visited, the unplanned nature of his travels, and the sacrifices he has made for his nomadic lifestyle. Prasanna also reflects on the impact of traveling on his appreciation of different cultures and the expansion of his food palette. He emphasizes the importance of exploring the world and understanding different markets for product development. The conversation concludes with a discussion on the evolution of personal identity through travel and the potential for future conversations on overlapping topics.
Takeaways
Traveling is a valuable form of education that provides personal growth and learning opportunities.Living in a place, even for a short period, allows for a deeper understanding of the culture and the ability to build meaningful relationships.Food perceptions can vary greatly between different countries and regions, and experiencing local cuisine is an important part of travel.Travel and learning opportunities are accessible to everyone, and it is possible to balance travel with professional life. Traveling to different countries allows for a deeper understanding and appreciation of different cultures.The number of countries and cities visited can vary based on personal circumstances and opportunities.Unplanned travel can lead to unexpected adventures and opportunities to explore new places.Traveling often requires sacrifices, such as stability and financial considerations.Experiencing different cuisines can expand one's food palette and provide a deeper connection to different cultures.Understanding local markets and cultures is crucial for effective product development.Traveling can contribute to personal growth and the evolution of one's identity.Future conversations can explore overlapping topics related to travel, culture, and product development.
Chapters
00:00 Introduction to Prasanna Veeraswamy03:06 The Unique Experience of Traveling to Every Country06:02 The Education and Personal Growth of Travel09:29 Balancing Travel and Professional Life10:53 The Topic: Learnings from Global Travels about Gaps in App Localizations12:14 Factors that Shape a Person15:31 The Impact of Living in Different Countries19:14 The Difference Between Traveling and Living in a Place23:17 Understanding Culture and Building Relationships26:55 The Influence of Travel on Food Perceptions30:38 The Importance of Being on the Ground36:53 The Accessibility of Travel and Learning Opportunities38:41 Traveling to Different Countries40:08 The Number of Countries and Cities Visited41:05 Unplanned Traveling43:41 Appreciating and Remembering the Travel Experiences45:55 Sacrifices Made for Traveling47:24 The Impact of Traveling on Appreciating Different Cultures49:22 Completing the Loop of Traveling to All Countries52:19 Expanding the Circle of Food Experiences56:14 Favorite Food Item57:20 Consistency in Food Preferences58:24 Evolution of Personal Identity01:02:27 Understanding Different Markets and Cultures01:05:38 The Importance of Traveling for Product Development01:08:34 Future Conversations on Overlapping Topics01:12:07 Closing Thoughts on Traveling and Exploration
Prasanna Veeraswamy's Links:
LinkedIn Profile
Book: One for the Road
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
Saturday Jan 06, 2024
Impact of Gratitude, Forgiveness, Expectations on Mental Health (feat. Vidhi Vohra)
Saturday Jan 06, 2024
Saturday Jan 06, 2024
In this conversation, Krish and Vidhi discuss the topics of gratitude and forgiveness. They emphasize the importance of expressing gratitude towards oneself and others, as well as the positive impact it can have on mental health. Vidhi shares her personal experience of forgiving someone and the sense of relief it brought her. They also discuss the need to let go of expectations and focus on the present moment. Overall, the conversation highlights the power of gratitude and forgiveness in leading a happier and more fulfilling life. In this conversation, Vidhi and Krish discuss the interconnectedness of happiness and mental health. They explore the relationship between gratitude, forgiveness, and expectations, emphasizing the importance of continuous effort in maintaining mental well-being. They draw parallels between mental well-being and the execution of tasks in software development. Vidhi shares her personal journey of forgiveness and highlights the positive impact it has had on her mental state. They discuss the need for incremental action and self-forgiveness as the first step towards positive change. The conversation concludes with a reminder to be grateful for what one has and to spread happiness to others.
Takeaways
Expressing gratitude towards oneself and others can have a positive impact on mental health.Forgiving others can bring a sense of relief and contribute to personal growth.Letting go of expectations can lead to greater happiness and contentment in life. Gratitude, forgiveness, and mental well-being are interconnected and contribute to happiness.Continuous effort is required to maintain good mental health.Self-forgiveness is the first step towards positive change.Feeling gratitude for what one has can lead to a happier state of mind.Forgiveness allows for healthier relationships and personal growth.
Chapters
00:00 Introduction and Gratitude07:48 The Power of Gratitude16:02 The Importance of Forgiveness28:17 Managing Expectations39:22 The Interconnectedness of Happiness and Mental Health40:34 The Connection Between Gratitude, Forgiveness, and Expectations42:55 The Continuous Process of Working on Mental Well-being43:54 The Challenge of Sustaining Positive Feelings45:21 The Importance of Execution and Concentration47:33 The Effort Required for Positive Change49:55 Taking Incremental Action Towards Mental Well-being52:47 The First Step: Forgiving Yourself57:32 Feeling Gratitude for What You Have59:01 The Journey of Forgiveness01:03:45 Making an Effort for Positive Change01:07:39 The Importance of Mental Peace and Self-love01:10:12 Continuing the Journey of Gratitude
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 05, 2024
Fundamentals of Sales (feat. Deva Rangarajan)
Friday Jan 05, 2024
Friday Jan 05, 2024
In this conversation, Dr. Deva Rangarajan discusses the differences between sales, pre-sales, and marketing. He explains that marketing is about creating awareness and educating customers, while pre-sales helps customers formulate solutions and sales focuses on negotiating terms and conditions. Dr. Rangarajan emphasizes that these roles can be performed by the same person or different individuals, depending on the complexity of the business and customer needs. He also highlights the importance of understanding customer requirements, being patient, and having curiosity in sales. Additionally, he addresses the challenge of selling products you're not convinced about and the need for effective communication and listening skills in sales. In this conversation, Krish and Dr. Deva Rangarajan discuss the qualities of a salesperson, the importance of curiosity and listening skills, and the balance between passion and sales skills. They also explore the subjectivity in sales and the role of process in selling. The conversation concludes with closing remarks and an invitation for further questions.
Takeaways
Marketing creates awareness and educates customers, pre-sales helps formulate solutions, and sales negotiates terms and conditions.The roles of marketing, pre-sales, and sales can be performed by the same person or different individuals.Understanding customer needs and effectively communicating with them is crucial in sales.Being patient, curious, and having effective listening skills are important qualities in sales. Curiosity and listening skills are essential qualities for a salesperson.Passion for the business can be important, but sales skills are also crucial.Subjectivity is inherent in sales, and it is important to embrace it.Selling is both a process and an art form, requiring a balance of science and creativity.
Chapters
00:00 Introduction and Background04:00 Understanding Sales, Pre-Sales, and Marketing09:26 Sequence of Marketing, Sales, and Pre-Sales19:20 The Art of Convincing and Persuading23:01 The Role of Sales in Every Role27:33 Dealing with Selling Products You're Not Convinced About30:32 Understanding Customer Needs and Misinterpretations36:03 The Importance of Patience and Curiosity in Sales40:17 Qualities of a Salesperson42:13 Passion vs. Sales Skills43:22 Subjectivity in Sales44:28 Selling as a Process and an Art Form46:22 Closing Remarks
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 04, 2024
(Part 2/2) Coaching and Self Development (feat. Dan Tudorache)
Thursday Jan 04, 2024
Thursday Jan 04, 2024
This conversation explores the gig economy and its impact on companies. It discusses the skills and training required for gig workers, as well as the integration of contractors into teams. The importance of human skills and the role of coaching in developing them is emphasized. The conversation also touches on the use of AI as a tool in problem-solving and consulting. Overall, it highlights the need for companies to adapt to changing challenges and leverage both human and AI capabilities.
Takeaways
The gig economy encompasses various sectors and requires different skills and training.Gig workers can have a significant impact on a company's image and performance.Integration and communication are crucial when working with contractors.Developing human skills and fostering relationships are essential for success in the gig economy.
Chapters
00:00 Understanding the Gig Economy05:20 Impact of Gig Workers on Companies06:25 Skills and Training for Gig Workers11:11 Integration of Contractors into Teams16:21 Building Skills and Relationships with Contractors19:34 The Importance of Human Skills21:20 Coaching and Developing Human Skills22:54 AI as a Tool in Problem Solving25:15 Adapting to Changing Challenges26:42 Using AI Tools in Consulting
Dan Tudorache's Details
LinkedIn Page: https://www.linkedin.com/in/dantudorache/
Vibe IT Up Podcast: https://www.linkedin.com/company/vibe-it-up/
EmpacITy company website: https://www.empacity.ro/
Personal webpage: https://www.dantudorache.com/
Tech Career Accelerator Program: https://www.empacity.ro/tech-career-accelerator-program/
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 04, 2024
(Part 1/2) Coaching and Self Development (feat. Dan Tudorache)
Thursday Jan 04, 2024
Thursday Jan 04, 2024
In this podcast episode, Dan Tudorake discusses game-based learning and its implementation in the tech industry. He shares insights on how game-based learning can be applied to software teams and how it can benefit different roles within an organization. Dan also explains how his coaching and gaming sessions are structured and the typical audience composition.
Takeaways
Game-based learning is an effective approach to training and development in the tech industry.
Game-based learning can be implemented to improve collaboration and problem-solving skills within software teams.
Training sessions should be tailored to the specific needs and interests of different roles within an organization.
Gaming sessions can be organized for groups of various sizes and should include participants from different departments and roles.
Dan Tudorache's Details
LinkedIn Page: https://www.linkedin.com/in/dantudorache/
Vibe IT Up Podcast: https://www.linkedin.com/company/vibe-it-up/
EmpacITy company website: https://www.empacity.ro/
Personal webpage: https://www.dantudorache.com/
Tech Career Accelerator Program: https://www.empacity.ro/tech-career-accelerator-program/
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 Jan 03, 2024
(Part 2/N) Terraform: Import Existing Resource
Wednesday Jan 03, 2024
Wednesday Jan 03, 2024
In this episode of the Terraform series, we continued from where we left off in the previous podcast. We created a Docker container, cloned the example repository, and initialized Terraform. We generated configuration using Terraform plan and imported a resource while modifying the configuration. We pruned the generated configuration and applied changes, handling destructive changes. We also troubleshooted and fixed errors along the way. Overall, we made progress in understanding Terraform and managing Docker containers using Terraform. In this second podcast of the Terraform series, Krish continues exploring the Terraform documentation and learning as he goes. He demonstrates how to modify the Terraform configuration by replacing placeholder values and making necessary changes to the config files. Krish also shares the commands he used, including Docker run, Docker PS, Terraform plan, Terraform apply, and Terraform show. He concludes the podcast by summarizing the progress made and inviting viewers to check out the next episode.
Takeaways
Terraform allows you to manage infrastructure using a common workflow
Importing resources into Terraform requires defining an import block and generating configuration
Destructive changes should be carefully managed and tested
Troubleshooting errors in Terraform requires understanding the configuration and resource dependencies Modifying the Terraform configuration involves replacing placeholder values and making necessary changes to the config files.
Commands like Docker run, Docker PS, Terraform plan, Terraform apply, and Terraform show are useful in the Terraform workflow.
The Snowpal platform offers APIs and SaaS products that can be used to power back-end systems and accelerate development processes.
Snowpal provides flexible options for using their products, including pay-per-use, monthly plans, and commercial licenses.
Chapters
00:00 Introduction and Recap
02:01 Creating a Docker Container
05:19 Cloning the Example Repository
08:16 Initializing Terraform and Generating Configuration
10:04 Understanding Main.tf and Terraform.tf
11:46 Generating Configuration with Terraform Plan
15:50 Importing a Resource and Modifying Configuration
18:21 Pruning the Generated Configuration
20:50 Applying Changes and Handling Destructive Changes
27:31 Troubleshooting and Fixing Errors
36:44 Recap and Conclusion
50:29 Modifying the Terraform Configuration
52:28 Summary and Next Steps
53:26 Using Snowpal APIs and SaaS Products
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 Dec 29, 2023
Friday Dec 29, 2023
The conversation explores the transformation of education and the future of learning. It discusses the role of research and research communities in shaping education. The importance of a well-rounded education and the need to adapt to market needs are highlighted. The conversation also delves into how real-time education will change and the potential disruption of the traditional education system. The role of humans in future education is examined, along with the vision for a more personalized and automated learning experience. An anecdote is shared to illustrate the challenges in traditional education. In this conversation, Krish and David discuss the impact of automation and AI on education. They explore the challenges and benefits of personalization in learning, as well as the potential loss of the human element. They also discuss the importance of building trust with digital entities and the future of education in a hyper-personalized world. They touch on the balance between automation and human interaction, using the example of playing chess. Ultimately, they emphasize the need to embrace change and make choices that prioritize the things that truly matter.
Takeaways
Education is undergoing a transformation, driven by advancements in technology and the need to adapt to market demands.
Research and research communities play a crucial role in shaping the future of education.
Real-time education and personalized learning experiences will become the norm.
The traditional education system is likely to be disrupted, leading to new models and approaches.
The role of humans in education will evolve, with digital technologies and automation playing a significant role. Automation and AI have the potential to dramatically change education, offering personalized learning experiences.
While personalization can enhance learning, it may also lead to a loss of the human element in education.Building trust with digital entities is crucial in a hyper-personalized world.
The future of education will involve a balance between automation and human interaction.
Chapters
00:00 Introduction and Setting the Stage00:53 Transformation of Education: Research and Research Communities06:31 Well-Rounded Education and Adapting to Market Needs11:25 Interacting with Real-Time Education19:47 Disruption of Traditional Education System30:49 The Role of Humans in Future Education41:10 Research, Training, and Execution in Education46:07 The Vision for Future Education47:31 Anecdote: Challenges in Traditional Education48:01 Introduction to Advanced Calculus49:26 The Challenge of Personalization50:26 The Potential Lack of Human Element51:31 Building Trust with Digital Entities52:29 Interacting with Teachers in a Hyper-Personalized World53:52 The Future of Education and Personalization55:25 The Balance Between Automation and Human Interaction56:52 The Example of Playing Chess57:22 The Importance of Human Personalization01:03:17 Finding a Balance in a Changing World01:06:00 Embracing Change and Making Choices01:10:42 Prioritizing the Things That Matter
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 Dec 28, 2023
(Part 1/N) Terraform: Fundamentals, Set up, Configuration, Providers, Resources
Thursday Dec 28, 2023
Thursday Dec 28, 2023
In this podcast episode, Krish explores the topics of platform engineering and Terraform. He starts by discussing Humanitech, a tool that streamlines platform engineering processes. Krish then dives into Terraform, an infrastructure as code tool, and demonstrates how to get started with it. He covers the basics of Terraform configuration, provisioning and destroying infrastructure, using variables, and working with the AWS provider. Krish also explores the resources available in Terraform and compares it to AWS SAM, another infrastructure as code framework. In this podcast episode, the host continues reviewing the build infrastructure section of Terraform. They explore resource blocks and the unique ID for resources. The host emphasizes a pragmatic approach to learning and highlights the benefits of hands-on experience. They also provide a recap of the progress made so far, including modifying the Terraform file and working with variables. The episode concludes with a promotion of the host's APIs and a call to action for listeners to try them out.
Takeaways
Humanitech is a tool that helps streamline platform engineering processes.
Terraform is an infrastructure as code tool that allows you to define, provision, and manage infrastructure resources.
Terraform configuration consists of providers, resources, and variables.
You can use Terraform to provision and destroy infrastructure, and manage resources across different cloud providers.
AWS API Gateway is a service that allows you to create, deploy, and manage APIs. Resource blocks in Terraform consist of a resource type and name, which form a unique ID for the resource.
Taking a pragmatic approach to learning, such as hands-on experience, can be more effective than solely relying on documentation and theory.
Using variables in Terraform files allows for more flexibility and avoids hard coding values.
Promoting APIs and encouraging listeners to try them out can help streamline backend system development.
Chapters
00:00 Introduction and Background02:18 Exploring Humanitech06:07 Introduction to Terraform07:06 Getting Started with Terraform13:37 Understanding Terraform Configuration19:05 Provisioning and Destroying Infrastructure23:16 Using Variables in Terraform28:08 Working with AWS Provider38:42 Exploring Terraform Providers and Resources45:46 Understanding AWS API Gateway49:30 Comparing Terraform and AWS SAM51:43 Reviewing the Build Infrastructure Section53:05 Taking a Pragmatic Approach to Learning54:32 Recap of Progress So Far55:02 Using Variables in Terraform Files56:03 Ending the Podcast and Promoting APIs
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