Prasanna Pendse

Technical Principal at ThoughtWorks

Prasanna has been programming since 1994. He was involved in such adventures as creating India's first search engine and an on-line music and video store before getting a real job.

Prasanna's development skillz went up a notch when he learned about TDD in the early 2000s. In fact, TDD (along with pair programming, CI and other XP practices) is a major reason why he still writes code. In 2006, he joined ThoughtWorks.

His coding adventures took him around the US to places such as Chicago (IL), Atlanta (GA), Albany (NY), Warren (NJ), Malvern (PA), San Francisco (CA) as well as around the world to Krakow (Poland), Bangalore (India), Tokyo (Japan), Beijing (China), Pune (India), Hong Kong (China) and Johannesburg (South Africa)!

Prasanna plays any of many roles including developer, tech lead, software architect, agile coach, QA, project lead, enterprise architect, technical principal, infrastructure automation and build monkey. He has programmed professionally in JavaScript, Ruby, C#, Java, Perl, PHP, Tcl/Tk, C, C++, Bash and PowerShell.

Besides coding, he enjoys eating different types of food and photography.

Presentations

Every team goes through ups and downs. As a Tech Lead, what role do you play in riding the storm, managing conflict, growing people's skills, ensuring technical excellence and fostering innovation - all while working under time pressure?

I'll go through some practical techniques from the trenches that put the “lead” in Tech Lead.

Continuous Delivery, DevOps, Cloud and Scalability are all the rage. At the heart of all of those is the ability to reliably recreate infrastructure on demand.

In this session, we'll learn to work with Infrastructure as Code. We'll use puppet to automate infrastructure in EC2 for a sample application that uses Apache, Tomcat, MySQL and MongoDB.

As mobile computing takes over the world, organizations have a dilemma. Do you build separate native apps to get the best user interface or save money and write a mobile web app? Calatrava turns this binary decision into a sliding scale.

I'll talk about how this new open source framework helps build cross-platform mobile apps, with high-quality, native user interfaces.

If you bring a Mac with Git, Ruby, RVM, Bundler, NodeJS, Android SDK and XCode, you can play along too.

Your application has state. Every action that every user takes changes this state. Yet, so much time and effort is spent on trying to persist something that is so transient. What if you didn't need to bother with the slowness of “persistence”? What if you could free the core of your application from I/O?

I will look at a couple of patterns that question one of the basic assumptions of today's architectures - that persistence of state is central to your application.

What defect management application / database do you use? Wait… why do you have so many defects that you need an entire database and an application to manage it?

I'll take a holistic look at what Quality means and some tricks and techniques to wrangle your open defect counts down into the low two-digits.