A Look At Pivotal Labs In Sydney

October 28, 2015 Simon Elisha

sfeatured-podcastA new office for Pivotal Labs, the agile development arm of Pivotal, has just opened in the beautiful city of Sydney, Australia. We have a candid chat with Labs Director, Lawrence Crowther, about the Labs setup, why Silicon Valley has been relying on Pivotal Labs for nearly 20 years and what we do to help customers get amazing results.

PLAY EPISODE

SHOW NOTES

TRANSCRIPT

Speaker 1:
Welcome to the Pivotal Perspectives podcast, the podcast at the intersection of Agile, Cloud, and Big Data. Stay tuned for regular updates, technical deep dives, architecture discussions, and interviews. Now, let’s join Pivotal’s Australia and New Zealand’s CTO, Simon Elisha for the Pivotal Perspectives podcast.

Simon Elisha:
Hello everyone and welcome back to the podcast from a very special location today. I’m in Sydney at a location called Tank Stream Labs and I’m joined by our director of Pivotal Labs for Sydney our new Labs Sydney office, Lawrence Crowther. Welcome Lawrence.

Lawrence Crowther:
Thanks, Simon. Thanks for having me.

Simon Elisha:
Pleasure, now Lawrence and I go way back, so it is exciting to see Lawrence take this role and really setting something up from scratch. I thought it would be a great opportunity to have a bit of a chat about what Labs is, particularly in Sydney, some of the nuances of how it works, etc. and how better than to come from the horse’s mouth, so maybe Lawrence can you paint us a mental picture of what a Labs set up looks like?

Lawrence Crowther:
Sure, I guess for the audience let’s go back a few steps and talk about Pivotal Labs in general and then we can drill into some of the specifics, but Pivotal Labs is the agile development if you will, of Pivotal Software, the company. It’s been around for about 20 years or so, helping startups and enterprises out of Silicon Valley for that time. We were the go to shop for agile development in the late 90s, early 2000s, until we saw a trend where big enterprises wanted to start building software like startups as well. Then we transitioned into helping enterprises as well, but using the same process.

Well known in the Silicon valley, now this is the 16th office in Sydney that we’re expanding globally, so it’s going very, very quickly. Our mission statement is to transform the way the world builds software, and we do that through a number of ways. Firstly we invite customers to come in and collocate with us, to help transform the way they build software as well. After the engagement, they’ll go back and carry on the process and the practice in their own office and become agile as well. Also, because of our process, we can deliver apps in a short period of time, so we help customers actually go to market much quicker and become very competitive in their space, so it’s really how we’re helping customers transform their business and their industry.

Simon Elisha:
I think there are many things that distinguish Labs as being different then other ways of developing and I talk to customers a lot about it but it’s often hard to communicate. It’s like the matrix, you’ve got to see it for yourself. There are many different dimensions, we’ll try and cover a lot of them as we speak today, but one of the probably most physically obvious ones is when you walk into a Pivotal Labs office and it looks a certain way, there’s a certain way everyone is sitting together, there’s a certain way people work that’s different. Do you want to give us a little view of that and what a Pivot goes through in daily life and that sort of stuff?

Lawrence Crowther:
Yeah, that’s a good question. I know when I first walked up to, I guess, the San Francisco office, I was blown away, didn’t know what quite to visualize with the whole set up. Customers have a similar reaction when they come there as well, it’s like what the hell is going on here? You guys building something for NASA because it is very, very different to walking into a traditional enterprise where developers wear headphones and they’re in cubicles, for example. The first thing you really hear is the noise because everyone is collaborating and they’re talking about solutions out loud before they’re touching the keyboard. Designers are on the whiteboard coming up with designs for MVP’s and PM’s are really engaging with the customers on the ground as well.

All that activity is happening all the time constantly throughout the day and you can feel the collaboration in the air when you walk in there. In terms of the actual set up of the office, we pair program. We actually pair in all the other disciplines as well. The engineers will pair together, the designers will pair together and the PM’s will pair together as well. For a developer setup there’s 2 monitors, 2 keyboards, 2 mouse but 1 machine. Really the screens are mirrored so that both developers can see the screen at the same time. I’ve seen pairing where you have 1 screen and 1 guy is looking over the shoulder of the other guy. That can give you RSI, but when you’re looking straight ahead, you don’t need to tilt your neck, you can see exactly what’s going on.

Simon Elisha:
You can still talk to one another and communicate.

Lawrence Crowther:
Exactly and the benefit of that is there’s one observer and one driver and then they’ll switch so the … often we do test driven development as well and often one Pivot, one engineer will sketch out the test, will build the tests and then swap to the other person who will then actually implement the code to make the test go green. You may have heard of something called red, green, refactor. What we do at Pivotal labs using the TDD approach is write up a correct failing test, right, so a test that addresses the business problems, it’s more user-centric. We take a story and it’s always from a user perspective, this user interacts with the system in this way and we will build the test to accommodate that.

Often that’s full stack as well, so you start with … you may have heard at BDD as well, behavior driven development, where we’ll write a test that assumes there’s a UI with a text box and a button for example, and write a test first, obviously it will fail because there is no UI there, yeah. Then we’ll implement that UI feature to make the test pass. Then we’ll go to the next level, which is write the user test first, for the back end API, whatever, for that UI to hook up to. Then the developers will switch and one will write the test, one will write the code to make that test pass and then after everything is green, the two Pivots will talk to each other and see if there’s any refactoring that’s appropriate to improve the code at that point.

That’s a little snippet on our process and that is consistent with our other disciplines as well, as I said, around product management design as well, where the Pivots will swap and do pieces of work and work collaboratively throughout the day.

Simon Elisha:
It is a very different vision of software development which is very much around communication and collaboration and it’s actually sitting next to someone and working together all day together.

Lawrence Crowther:
Yeah.

Simon Elisha:
Now, one of the things people often ask in that situation is well, now, when are people going to meetings and checking their emails and taking phone calls, etc.? I think one of the nice things about working at Labs is that stuff doesn’t happen in your day, does it? It’s a bit different in the way that it’s structured.

Lawrence Crowther:
That’s right, I think that’s because we have laser focus on delivering value to our customers and because of the pairing as well, if you’re pairing with someone, you’re not going to open up your email or your Facebook so the other guy can see.

Simon Elisha:
Unless you’re friends on Facebook, maybe, I don’t know.

Lawrence Crowther:
Maybe, but also the … You’re trying to impress the other Pivot as well, right, so you’re trying to demonstrate a knowledge in a certain area but also show empathy as well. It’s hard to get distracted and go off on different threads when both of you are engaged in the same problem space.

Simon Elisha:
It keeps you very focused and you’re getting less disruption because you’re not going off and doing a meeting or answering a phone call, etc. That’s … you do your emails at lunch time or whenever afterwards but you can’t go … That flow and in any knowledge work, having a long period of time when you can just flow and think and focus on a problem, you get so much more done than switching every 5 minutes or jumping onto instant messenger and all that sort of stuff.

Lawrence Crowther:
Yeah, it might help to describe a typical day in the life of a Pivot. Everyone gets in about 8:45 am for breakfast. We feel that breakfast is the most important meal of the day and we like everyone to be together discussing what they did yesterday for example or anything outside of work as well because we create this very open environment, everyone is best of friends, etc. Then we have stand up, about 9:06 where we talk about any new faces, interests, hints or any helps, any events. That lasts for about 10 minutes. That’s a good way for Pivots to raise any help they need or talk about a meet up or event that’s happening today or tomorrow and to discuss some technical issues or product related issues that is noteworthy for the group.

After that we … in a bigger office, say San Francisco, they’ll do individual project meetings because obviously there’s 10, 15 projects going on concurrently. Everyone breaks off and goes in that specific project area and does a project specific meet up, stand up. Obviously they’ll talk about what they did yesterday, what they’re going to do today and then more importantly who is pairing. This is one of the important points about the Labs’ process is that we change pairs every day, so we rotate.

Simon Elisha:
I think that’s a fascinating thing because I think, when you think about pairing, oh I’m going to have my bestie or the person I know I work well with or what have you, but this rotation of pairs means that nothing is in any one person’s head, you’re learning different styles, you’re interacting with different people. It just shows the social nature of software development, which is not what we think of when we think of a guy or a girl sitting there with the big headphones on swigging Mountain Dew, cranking code out, this is very different, isn’t it?

Lawrence Crowther:
Yeah, I think it’s important for a couple of reasons, one, like you said, it spreads the knowledge across the team, in case someone gets hit by a bus.

Simon Elisha:
It’s a perennial problem with software development, we are the highest affected by buses in global statistics.

Lawrence Crowther:
Exactly, so there’s that part of it where … or as an anchor you may take that Pivot off the project to put on another project and that team needs to be self sufficient. We’ll talk about the project structure a bit later with the concept of an anchor as well. Just leaving that thread, we like our developers to be full stack, so you might be doing some back end Spring Boot story on one particular day and switch completely the next day to JavaScript on the front end and maybe even mobile as well in the same project. In three days, you’ve covered three different technologies.

Simon Elisha:
Which is pretty cool from a developer perspective, you’re not bored, you’re not stuck in the one place. You still get to go deep on things but you get that variety, so you’re not doing .NET for the term of your natural life.

Lawrence Crowther:
Exactly, a lot of people get excited about going to Google and Facebook or whatever as a career but I pretty much guarantee you’ll be doing a single thing, one language, one specific domain for the life of your career there. At Pivotal Labs we can offer great variety. We pretty much build in any language and tools that customers want to build apps in, whether it’s Go, JavaScript, Spring, Ruby on Rails, Python, you name it, then of course the mobile platforms, iOS and Android. You get great variety from your career as a developer and it helps keep the morale high in the office as well, which is obviously important to have happy Pivots.

Once we work out who is pairing, and we put a lot of thought into pairing as well, so we might pair a senior developer with a more junior developer, or someone who is just starting the project, to get them ramped up quickly. That way we can ramp uphill quickly and spread the knowledge more quickly. After we’ve decided that, we get down to pairing and we pair up until 12:30 where we break for lunch. On Tuesdays we’ll bring lunch in, we’ll have lunch and learns, tech talks, to about 1:30. Then from 1:30 we pair all the way to 6:00 with breaks in between for ping pong.

Simon Elisha:
Yeah, and snacks.

Lawrence Crowther:
… and other games and snacks etc.

Simon Elisha:
The snacks at Labs are pretty extensive. Look there’s different levels of snackage, there’s the Silicon Valley level of outrageous snackage but …

Lawrence Crowther:
Which is like protein bars and apple crisps.

Simon Elisha:
Yeah, and lots of ice cream but compared to what you see at most Australian companies which is you’re lucky if you’re getting some biscuits and some tea and coffee. This is pretty extensive. I remember hearing, I don’t know if this is an apocryphal story but I remember hearing a story of someone who came and did a Labs tour and said, “How can you trust your employees with this open snack bar and …”

Lawrence Crowther:
… and beer.

Simon Elisha:
… and beer and ping pong? Or table tennis as we like to call it. The response is, well if you’re not going to trust them with snacks, how are you going to trust them with the future of your business for the software developing? I think it’s an interesting trust exercise of saying, “Well here’s all the snacks you want, you’re not going to fill your pockets and rock on home with protein bars.”

Lawrence Crowther:
Exactly but I think that comes down to the way we hire, we hire the right people for the job as well. We’re looking for a specific type of person when we hire people into the Labs. You may have heard of the RPI that we do, which is an interview for engineers. We have a similar thing for PM’s and designers, call the PPI, ping pong interview. The RPI for developers doesn’t necessarily look for … it looks for many things, it doesn’t necessarily only look for really strong technical skills, although that’s very important, you need a basic understanding of programming and computer science, but it’s more than that, it’s about the collaboration and empathy and how you work with that pair and really to assess that that person can work well in a pairing environment, in such a highly collaborative environment.

We often do RPI’s on languages they’re not familiar with, we’ll take a Java person, RPI … we’ll take a Ruby person and RPI them in Java for example. If they get through that then we stick them on a real project. They come in for a, we call it immersion day or pairing day, where they pair with someone in the morning from 9:00 until lunchtime on a language that they’re probably familiar with. In the afternoon we’ll pair them on a language they’re not familiar with with someone else. The idea is to get 2 thumbs up. It’s a pretty simple process, right, there’s the RPI and a full day of pairing to do, that’s it. There’s none of this 14 interviews for Google and you don’t have to solve …

Simon Elisha:
Why manhole covers are round!

Lawrence Crowther:
It’s very straightforward but it’s very specific and it works, right, because you can instantly tell if that person is going to do well in Pivotal Labs. The PPI is quite interesting as well, again it’s a pairing situation but they’ll be on the whiteboard and design some problems basically. We’re not going to get into it here, we’ll give away our secret sauce but it’s a very similar thing, we’re looking for high collaboration and high empathy as well.

Simon Elisha:
Yeah, so it’s a lot about character as well as just skill, which if you’ve worked in any working environment you know that we tend to hire for skills and not so much for character but you end up dealing with characters all the time.

Lawrence Crowther:
It’s a mix, yeah.

Simon Elisha:
Having the right people in the room can make all the difference and this is about making sure we have that.

Lawrence Crowther:
Exactly, yeah, because you could get a rock star PhD from Google who has worked on Google search since it began, right. He may fail the interview because he has no empathy.

Simon Elisha:
Exactly, it’s interesting, it’s a very, very different model. Talk to us a bit about the typical Labs projects that you’ve been seeing and that customers do with us.

Lawrence Crowther:
Yeah, we typically see it’s customers come to us to build a brand new app, because we like to do applications that have a real business need in the market and have a project sponsor or project owner. We don’t like doing pet projects from a CIO to refashion some platform or infrastructure. That’s somewhat interesting but the real good projects for us are the ones that add business value and have an impact in the market. That’s why we’re so successful with startups in the beginning. Worked with Yelp and Groupon, etc. Pretty famous apps, right?

We like those ones and we like projects where the customer is willing to be enabled by our process. We could do two types of projects. One is more execution based where the customer has a tight deadline, really wants to get an app out, for example we worked with a large automotive company in Germany recently, where they didn’t have so many of their engineers onsite but their main goal was to deliver an app in 3 to 4 months for a big event that they had in Germany, but after that there’s other projects they want to do where they want to become enabled in our process because they love it, but that first one they just wanted to knock out.

Simon Elisha:
Get it out the door.

Lawrence Crowther:
Exactly, so we do those kinds of projects or it might be a start-up that has a strong visionary and maybe a desire but no engineers, so they come to us for the engineering talent and knock out that app. Later on they can think about doing more of the agile transformation where we inject some of our process. The best projects for us are when there’s 50/50 clients and Pivots on a project where we are enabling them in our process and pairing all day and at the end of the engagement they go back and carry on with our process in their own organization.

Simon Elisha:
I think that is one of the unique things, it’s not like we’re sitting here saying we’ve got this super cool, uber special way of developing software and you’ve got to pay us for it and only we know the secret incantations. You can come and learn everything … and it gives you the opportunity to learn from “the best”. I know most people like to be very humble and not going to say they know all the answers but certainly for what I’m seeing compared to other development methodologies it’s streets ahead. You talk to customers and say we’re five times more efficient doing it this way. It’s pretty radical, but it’s not a secret it’s just come … again it’s like The Matrix, come and experience it for yourself. The good thing, I think, for Australian customers is no they can, because we have Labs in Sydney. Just as an adjunct to that, because I know a lot of people listening like the thought of Sydney and maybe are developers, are you hiring at the moment?

Lawrence Crowther:
Absolutely, yeah. That’s probably a good segue into what we’re doing here in Sydney. We started the office officially last week in a temporary space here at Tank Stream Labs for which those of you who don’t know is a startup co-working space in the city of Sydney. There’s a lot of cool startups here as well. One is called Airtasker, which is similar to the Mechanical Turk or the Task Rabbit. We’ve actually used it to get some things done in the office. Another one, a mate of mine actually, who I used to work with at Spring and VMWare started a start-up called Moneyball which is like the DraftKings in the US, the fantasy football, but it’s across all different sports.

Yeah, so some pretty cool stuff happening in this office and it’s very collaborative. We had drinks on Friday with a lot of startup communities and the idea really is to get involved in that startup community here, build great relationships and be part of the fabric of the tech scene in Sydney going forward. We will move into a permanent space next year when the office grows. Yes, so I’ve relocated some folks from the US, across San Francisco, New York, Toronto, here to be in the Labs, and we call that the seed team. It’s important when you open a new Pivotal Labs office to have a core seed team that have experienced Pivots that have been there for 2 or 3 years, really to bring that culture across.

The idea then is to hire local people to supplement that seed team and we will pair with the new … and train them up on the methodologies to really enable them on the culture as well. When the seed team leave, if they do after a year or so, we have a very strong team who understand the core principles of Pivotal Labs and can articulate the vision to our customers and can enable customers, more importantly when they come in. Yeah, there’s several positions at the moment that are available, engineering role, product manager and product designer. Across all three disciplines.

Simon Elisha:
It’s pretty exciting from my perspective. I get to see lots of places that people work at, etc. it’s got to be one of the best jobs going in Australia at the moment in the development scene, just in terms of the chance to do that full stack development, to have those Silicon Valley like conditions and to have that forward mindset of how to build software, it’s pretty cool. I remember doing enough late nights as a developer myself to think, wow starting work at 9 and finishing at 6 and not working on the weekends, it’s a marathon, not a sprint and it actually seems pretty good to …

Lawrence Crowther:
You bring up an interesting point, actually and I talked about the typical Pivot day where we start at 9:00 and end at 6:00. That’s really on purpose to create a sustainable work-life balance for our Pivots, because a happy employee does their best work. Customers don’t really understand that, because if there’s a release happening they’ll put people to work over the weekend to get that done, but in the long term we think this is a better, more sustainable process.

Simon Elisha:
Yeah, for sure. Before we finish up it would be remiss of me not to ask you a question, because you are, in your previous role, an expert on Pivotal Cloud Foundry® (PCF) and so I’m interested now in your new role as director of Labs, how you see PCF fitting into the work that you do at Labs with customers?

Lawrence Crowther:
Good question, I’m pretty lucky actually because the Sydney market, because of heavy enterprise, with banks, insurance companies, Telco’s etc. using a lot of Java and hence, most probably a little Spring, so I’m very keen to explore how we can on-board customers onto the platform using things like Spring Boot and Spring Cloud and 12-factor apps etc. Now that contradicts that Pivotal Labs methodology a little bit in the fact that we don’t do architecture up front. The TDD approach with the red, green, refactor, we just do enough code to make the test go green, to make the test pass, so we don’t necessarily build this giant architecture of microservices, etc. up front.

I think thereR#8217;s a balance in between there where we can use a lot of the Spring tooling to basically stub out a lot of the architectural components so that developers can test drive against those tools and actually focus on the business logic, the customer value without having to worry about the infrastructure component. I think if we get that right, that balance, after we do projects it totally makes sense to go on something like Cloud Foundry. Of course, throughout the engagement we offer Pivotal Web Services for free as part of the development and then we can demonstrate things like continuous integration, continuous delivery, so we’re … Even on day one, when the customer comes in to start doing their app, they’re pushing production, so you repeat that process for the entire three months. That way, at the end of the engagement there’s no big release, right.

Simon Elisha:
It’s always being released.

Lawrence Crowther:
We’ve done it every day, so that’s the beauty of that, so I think I’m definitely keep to align that message with the PCF story.

Simon Elisha:
Fantastic, and certainly I think you see the benefit of having platform when you want to get going quick. You’re all excited, you sit down, you start thinking of the first few things you want to deliver, the first thing is not, okay let’s install some servers guys, it’s, no let’s cut some code and push it out there.

Lawrence Crowther:
That’s why PCF makes sense.

Simon Elisha:
Totally, fantastic. Well Lawrence, thank you for giving us that overview. I’ll reiterate again that we are hiring here in Sydney. Whilst I’m a Melbourne boy, the coffee is much better in Melbourne but you guys do have the harbor here so there’s a few benefits of living in Sydney I think, so it’s not one of the worst places in the world to live, using my Australian sarcasm.

Lawrence Crowther:
Sure, I might throw out my Twitter handle, so people can hit me up if they’re looking for work, so @lozcrowther on Twitter, so I look forward to your message.

Simon Elisha:
Excellent, so thank, Lawrence, for joining us today.

Lawrence Crowther:
Cheers, thanks Simon.

Simon Elisha:
Thanks everyone for listening and as I mentioned, notes in the share notes, if you’ve got any suggestions please email us, podcast@pivotal.io and until next time, keep on building.

Speaker 1:
Thanks for listening to the Pivotal Perspectives podcast with Simon Elisha. We trust you’ve enjoyed it and ask that you share it with other people who may also be interested. We’d love to hear your feedback so please send any comments or suggestions to podcast@pivotal.io. We look forward to having you join us next time on the Pivotal Perspectives podcast.

About the Author

Simon Elisha is CTO & Senior Manager of Field Engineering for Australia & New Zealand at Pivotal. With over 24 years industry experience in everything from Mainframes to the latest Cloud architectures - Simon brings a refreshing and insightful view of the business value of IT. Passionate about technology, he is a pragmatist who looks for the best solution to the task at hand. He has held roles at EDS, PricewaterhouseCoopers, VERITAS Software, Hitachi Data Systems, Cisco Systems and Amazon Web Services.

Previous
Open Repo Now Available For .NET Applications On Cloud Foundry
Open Repo Now Available For .NET Applications On Cloud Foundry

The Cloud Foundry .NET team recently completed a significant milestone. Through a great partnership between...

Next
The Three Horsemen of the Digital Apocalypse Considered
The Three Horsemen of the Digital Apocalypse Considered

This post dissects two horsemen of the digital apocalypse by dissecting prolific industry mantras: "softwar...

×

Subscribe to our Newsletter

!
Thank you!
Error - something went wrong!