Vittorio Viarengo, ViVi software

77
August 2007 Page 1 Vittorio Viarengo Vice President Development Service Delivery Platform Oracle Fusion Middleware [email protected]

Transcript of Vittorio Viarengo, ViVi software

Page 1: Vittorio Viarengo, ViVi software

August 2007 Page 1

Vittorio ViarengoVice President Development

Service Delivery Platform

Oracle Fusion Middleware

[email protected]

Page 2: Vittorio Viarengo, ViVi software

August 2007 Page 2

The information and statements contained in this presentation represent Vittorio Viarengo’s own point of view and opinions. They do NOT represent in anyway Oracle’s official position

Page 3: Vittorio Viarengo, ViVi software

August 2007 Page 3

Page 4: Vittorio Viarengo, ViVi software

August 2007 Page 4

Agenda

From “Zena” to Silicon Valley– Lessons Learned

Creating High Performance Teams to Develop Innovative Products

– Idea– Team– Vision– Process

Conclusions Q&A

Page 5: Vittorio Viarengo, ViVi software

August 2007 Page 5

From Zena….

Page 6: Vittorio Viarengo, ViVi software

August 2007 Page 6

You Are Here

Page 7: Vittorio Viarengo, ViVi software

August 2007 Page 7

1988-1992 L’universita’ ed l’ITD-CNR

Corso di Ingegneria del Software– Proff. Giorgio Olimpo, Direttore Istituto Tecnologie

Didattiche CNR

Borsa di Studio CNR– Incontro con Carlo Innocenti (Minollo)

Il Progetti Europei OSCAR e DISCOURSE– l’utilizzo di database Multimediali per supporto allo sviluppo

di materiale didattico

Mandato della Comunita’ Europea di usare un Object Oriented Database

– ObjectStore from Object Design

Page 8: Vittorio Viarengo, ViVi software

August 2007 Page 8

The New Idea/Product Template

Inflection Point– Object Database Technology

Customer Need– Better Productivity with Object Dabases

Product Idea/Vision– Do for Object Databases what Standard Query Tools did to

SQL databases

Team– Carlo Innocenti and the ITD team

Execution– Passion

Page 9: Vittorio Viarengo, ViVi software

August 2007 Page 9

Early Lessons

Identify Opportunities– Learning opportunity

Embrace Change Identify Mentors

– Luigi Sarti, Augusto Chioccariello, Mauro Tavella, Giorgio Olimpo, Michela Ott, Donatella Persico

…and Team– Carlo Innocenti

Page 10: Vittorio Viarengo, ViVi software

August 2007 Page 10

1993

Prototype Ready Demo sent to Object Design Invitation to Object Design User Conference in

Boston– “Meet the customer”

Object Design Rejection… Customer Encouragement External Inflection Points

– Industry moving from Windows to the Windows NT platform– Compiler market moving from Borland (OWL) to the

Microsoft C++ Compiler and MFC

Page 11: Vittorio Viarengo, ViVi software

August 2007 Page 11

ViVi Software’s First Trade Show

Page 12: Vittorio Viarengo, ViVi software

August 2007 Page 12

Page 13: Vittorio Viarengo, ViVi software

August 2007 Page 13

1993- 1994 – ViVi Software

ViVi Software is formed– Alberto Massari and Ivan Pedruzzi join the Team

Headquartered in…– A basement in Corso Dogali

Product Is Re-written in 3 months Beta is ready for customers Product is presented to

Object Design– Still, no love

Product is presented toCustomers

– Still…. Lot’s of Love!!!

Page 14: Vittorio Viarengo, ViVi software

August 2007 Page 14

ViVi Software

Page 15: Vittorio Viarengo, ViVi software

August 2007 Page 15

ViVi Software @ Work

Page 16: Vittorio Viarengo, ViVi software

August 2007 Page 16

Lessons

Take Risks– Open your “Partita IVA”

Talk to Customers!!!!– And Listen…

Focus, focus, and… focus– Cut deep, cut early

Cut the Schema Design, focus on browsing tool– Turn down “easy” money, focus on long term vision

(Re-)Embrace Change– New platform, new compiler,…

Don’t be afraid of complete Re-writes Work the Network

– Alberto, Ivan…– Customer leads

Hire A+ People

Page 17: Vittorio Viarengo, ViVi software

August 2007 Page 17

ITEA Prize

Page 18: Vittorio Viarengo, ViVi software

August 2007 Page 18

1995

Visual Object Manager 1.0– Product Ready and Shipping

Internet for e-Commerce The Shrink-wrapping Machine…. Marketing, leads, customers

– Worldwide Mailing Campaign

Near-real Time Technical Support

Page 19: Vittorio Viarengo, ViVi software

August 2007 Page 19

Lessons

The Joy of building products– There is nothing like shipping products to customers– …and see them deployed

Attention to Details Believe Work hard…really hard

– If it was easy, somebody else would have done it already

Love and pamper your customers

Page 20: Vittorio Viarengo, ViVi software

August 2007 Page 20

1996 The OEM Agreement with Object Design

Object Design Management Change– Bob Goldman

OEM Agreement is Signed– The first real money…

Visual Object Manager become ObjectStore Inspector

Inspector 2.0, another huge leap forward …but… business model not sustainable 1997: Object Design Buys ViVi Software

– The Negotiation

1998: ViVi Software goes to Boston

Page 21: Vittorio Viarengo, ViVi software

August 2007 Page 21

Lessons

Always know the value of you company If you don’t, let the buyer make the first offer… Hire a good lawyer Engineers can be good negotiators…

– Minollo turns tough business man

Page 22: Vittorio Viarengo, ViVi software

August 2007 Page 22

You Are Here……now

Page 23: Vittorio Viarengo, ViVi software

August 2007 Page 23

1998-2001 The Experience in Boston

Risk and Speed– Fast track promotions

New Technology and Inflection Points– The Internet– XML

Meeting Adam Bostworth Meeting Carl Sjogreen NASDAQ at 5200

– From reality to - easy money and return…

Workforce Mobility

Page 24: Vittorio Viarengo, ViVi software

August 2007 Page 24

Lesson Learned

Vendi, Guadagna e…

Pentiti

Vendi, Guadagna e…

Pentiti

Page 25: Vittorio Viarengo, ViVi software

August 2007 Page 25

You Thought you were

going to be here…

…but you a really here

now

Page 26: Vittorio Viarengo, ViVi software

August 2007 Page 26

Seattle and Silicon Valley

Adam Bosworth Aggressive Recruiting Techniques

– Move to Seattle, then to San Jose, the capital of Silicon Valley

Join BEA Systems in Seattle– Build the First Integrated Java Platform

…the Visual Basic of Java– Recruit Carl… again..

Adam’s Team– Tod Nielsen, Rod Chavez, David Bau, Mark Igra, ….– And the WebLogic Team

Scott Diezen (the father of J2EE)…

The Oracle Opportunity

Page 27: Vittorio Viarengo, ViVi software

August 2007 Page 27

BEA

Page 28: Vittorio Viarengo, ViVi software

August 2007 Page 28

Oracle

Page 29: Vittorio Viarengo, ViVi software

August 2007 Page 29

Lesson Learned

Work with Great People on Great things– Title and Money are always secondary

You have to move where the opportunity is Job mobility in IT is a fact of life

Page 30: Vittorio Viarengo, ViVi software

August 2007 Page 30

Creating Innovative Products

The IT World Seen from a Simple Baker’s Eyes

Page 31: Vittorio Viarengo, ViVi software

August 2007 Page 31

Most high-performance teams

are motivated by one thing (primarily)…

Most high-performance teams

are motivated by one thing (primarily)…

Page 32: Vittorio Viarengo, ViVi software

August 2007 Page 32

Changing the World

Define a World…

… and change it!!!

Page 33: Vittorio Viarengo, ViVi software

August 2007 Page 33

Changing the World: Steps

Need an Inflection Point– “And yet it does move”

Customer Need Idea/Vision

– “Give me a lever and a fulcrum and I shall move the world”, Archimedes

Team– People who have done it before and… who have NOT

done it

Execution– Strategy gets you on the playing field, but execution

execution pays the bills.“, Gordon Eubanks

Page 34: Vittorio Viarengo, ViVi software

August 2007 Page 34

The Idea

Page 35: Vittorio Viarengo, ViVi software

August 2007 Page 35

The Idea

Better be a great Idea – D U H ! Better be original

– Only big companies can afford building me-too products– “look at something people are trying to do, and figure

out how to do it in a way that doesn't suck” Paul Graham

– Examples: Google Search,

Idea Sources– Customer (careful how you listen to customer, they will make

you build yesterday products)– Engineers – Business People

Better be mad about something– Best idea comes from people mad at something

Page 36: Vittorio Viarengo, ViVi software

August 2007 Page 36

The Idea

Look for disruptive technologies– Examples: HTTP, Java, Broadband

Look for disruptive Business Models– Google Pay-per-click, Software as a service

(Salesforce.com), virtual Stores (Yahoo stores, eBay, Amazon), Open Source software

One-Sentence Rule– You should be able to express a good idea in one sentence

The KISS Principle– Keep It Simple and Stupid

…or, Keep it Simple, Stupid

Page 37: Vittorio Viarengo, ViVi software

August 2007 Page 37

Recognize Relevant Cycles: Standardization

The Standardization Cycle Examples: J2EE, WebServices, BPEL, …

Page 38: Vittorio Viarengo, ViVi software

August 2007 Page 38

Recognize Relevant Cycles: Tech Cycles

Technology Products Tend to go Through Cycles

– E.g. Thick client (Client Server)-Thin client (HTML)-Thick(er) client (AJAX)

– Convergence-divergence: Application Development – Application Integration Weather-site, Stock Quote Site, Email… - Portals Phone-PDA-> Smart Phone Phone-Camera->Camera-phone Telephony-IT Technology

– Fixed Telephony spinning off Mobile branches and now buying them back

Page 39: Vittorio Viarengo, ViVi software

August 2007 Page 39

The Team

Page 40: Vittorio Viarengo, ViVi software

August 2007 Page 40

“What matters is not ideas, but the people who have them. Good people can fix bad ideas, but good ideas can't save bad people”

Paul Graham

“What matters is not ideas, but the people who have them. Good people can fix bad ideas, but good ideas can't save bad people”

Paul Graham

Page 41: Vittorio Viarengo, ViVi software

August 2007 Page 41

Team – Hiring/Interviewing

Hire Smart people who Get Things Done Have a rigorous interview process that everybody

understands and follows– Define an interview plan, split responsibilities– Ask tough programming questions to engineers– Ask situational questions– Ask impossible questions

How many gas stations are in Genova?– Ask technical questions outside the domain

Design an elevator

Make sure all relevant people interview the candidate– The team has to Buy-In the candidate which creates positive

environment for candidate to succeed

Hire for Talent not for Knowledge

Page 42: Vittorio Viarengo, ViVi software

August 2007 Page 42

Team-Hiring/Interview

Remember!!!!!Remember!!!!!As hire AsAs hire AsBs hire CsBs hire Cs

Remember!!!!!Remember!!!!!As hire AsAs hire AsBs hire CsBs hire Cs

Page 43: Vittorio Viarengo, ViVi software

August 2007 Page 43

Team - Hiring

If you have even a single doubt-> NO HIRE See people 2-3 times before hiring

You will see the typical personality patterns emerge after the second meeting

– Take people out to dinner before making the offer

See how they behave in a social environment

See http://www.joelonsoftware.com/

Page 44: Vittorio Viarengo, ViVi software

August 2007 Page 44

Team-Hiring

In many cases you In many cases you will spend more time will spend more time with your new hire with your new hire

that with your that with your relevant other…relevant other…

In many cases you In many cases you will spend more time will spend more time with your new hire with your new hire

that with your that with your relevant other…relevant other…

Page 45: Vittorio Viarengo, ViVi software

August 2007 Page 45

Team Composition - General

Only Hire As– An A engineer is 10 to infinite times more productive than a B one

Build the right culture from the very beginning– Building a team == baking a cake

Balance Junior vs. Senior Know yourself and your Team

– E.g. Meyer Briggs

Do you have the right DNA?– If not, go hire or buy a company– If you are embarking in a product line extension, definitely buy

You don’t need big teams to change the world– 8-10 developers can write a lot of code

Page 46: Vittorio Viarengo, ViVi software

August 2007 Page 46

“The leaders of Great Groups love talent and know where to find it. They revel in the talent of others.”Warren Bennis & Patricia Ward Biederman, Organizing Genius

“The leaders of Great Groups love talent and know where to find it. They revel in the talent of others.”Warren Bennis & Patricia Ward Biederman, Organizing Genius

Page 47: Vittorio Viarengo, ViVi software

August 2007 Page 47

“The leaders of Great Teams, are fanatic,

relentless, persistent, aggressive… recruiters”

“The leaders of Great Teams, are fanatic,

relentless, persistent, aggressive… recruiters”

Page 48: Vittorio Viarengo, ViVi software

August 2007 Page 48

Why Do We love Freaks?

(1) Because when Anything Interesting happens … it was a freak who did it. (Period.)

(2) Freaks are fun. (Freaks are also a pain.) (Freaks are never boring.)

(3) We need freaks. Especially in freaky times. (Hint: These are freaky times, for you & me & the CIA & the Army & Avon.)

(4) A critical mass of freaks-in-our-midst automatically make us-who-are-not-so-freaky at least somewhat more freaky. (Which is a Good Thing in freaky times—see immediately above.)

(5) Freaks are the only (ONLY) ones who succeed—as in, make it into the history books.

(6) Freaks keep us from falling into ruts. (If we listen to them.) (We seldom listen to them.) (Which is why most of us—and our organizations—are in ruts. Make that chasms.)

Page 49: Vittorio Viarengo, ViVi software

August 2007 Page 49

Team - Misc

The 5 Fs Principle– Fun, Fame, Fortune, Family, Force, …

Page 50: Vittorio Viarengo, ViVi software

August 2007 Page 50

Execution

A good plan violently executed now is better than a perfect plan next week." (General George S. Patton)

Page 51: Vittorio Viarengo, ViVi software

August 2007 Page 51

Vision-Goals-Metrics

You need a compelling Vision and Mission– Microsoft: 1 computer on every desktop– GE: Be n.1 or n.2 in every market we play

Set aggressive Goals– You only get what you ask for– Belief-action-results– A man on the moon within the next 10 years

Everybody needs to be behind it– Agree, disagree… commit– …but listen to the “bastian contrario” routinely – Re-assess the Vision when appropriate– Vision, culture and metrics fight politics (cook a good cake)

Constantly Measure Results Against Goals– If you don’t measure it you don’t know where you are…

…and when you get there

Page 52: Vittorio Viarengo, ViVi software

August 2007 Page 52

Manage the Vision, Manage Mentor People

Map Individual goals to product and corporate vision– Makes sure everybody knows what is their contribution to the

vision

Don’t promote Great Engineers to management Positions – Define Separate Career Paths

– Unless that’s what they want to do

Know yourself and know the team– Myers-Briggs test– http://www.humanmetrics.com/cgi-win/JTypes2.asp – You CANNOT change people!!!!!

Establish Measurable goals and personal development plans and review them every 6-12 month

– Measure everybody

Overcompensate the top performers– And Routinely Remove the bottom 5% (if applicable)

Page 53: Vittorio Viarengo, ViVi software

August 2007 Page 53

Vision and Values

Define and practice corporate values– It is an important ingredient of “the cake”

Respect, Customer Focus, Accountability,… Innovation, Integrity, Excellence in Execution, … 3Ps Promise, “Phollow” through,

– Apply those values in everything you do, starting from beginning, starting from the top…or else it is just BS

E.G. The Value of my Team at Oracle– “We care!”

Page 54: Vittorio Viarengo, ViVi software

August 2007 Page 54

Embrace Change

Change is a fact of life and it is a known constant of software development

Page 55: Vittorio Viarengo, ViVi software

August 2007 Page 55

Embrace change

“If you don’t like change, you’re going to like irrelevance even less.” —General Eric Shinseki, Chief of Staff. U. S. Army

Page 56: Vittorio Viarengo, ViVi software

August 2007 Page 56

Team Functions

The “One ass to kick” Principle

Page 57: Vittorio Viarengo, ViVi software

August 2007 Page 57

Management/Founders

Technical Innovation Comes From Technical People

– Larry Ellison, Bill Gates, Steve Jobs, Sergei Brin…

History seems to show that you are better off with a technical people at the elm…in technology companies

Page 58: Vittorio Viarengo, ViVi software

August 2007 Page 58

Team Composition - Functions

“Separate Church and State” AKA in Software as “Separate Product Management and Engineering”

– Keep PM motivated by customer and business drivers– Keep engineers motivated by: tough problem to solve, quality,

performance, punctuality– Keep Sales people away from your engineers and requirements

Sales input through product management

Product Management– What and why – Product Design/Doc

Responsible for user-centered design

Engineering (QA, Sustained Engineering) – Responsible for changing the world– Define “how” and “how long”

Architecture – Holds the key to the overall architecture f the product

Page 59: Vittorio Viarengo, ViVi software

August 2007 Page 59

Team Functions - Continued

Business Development– Develops the business

Marketing Sales Pre-sales Consulting SWATT Team

Page 60: Vittorio Viarengo, ViVi software

August 2007 Page 60

The Product Manager Role

The CEO of the Product (area) – Responsible for ALL the user-visible aspect of the product– User-Focused– Business Focussed– First User of the product

Defines the “What” we build and “Why”– Defines what NOT to build and why

PM makes cuts/trade-off– PMs keep everybody a little unhappy

Define the product as a whole– Features, Packaging, Support, Price….

Outside Customers: – The guy who writes the check– The guy who uses the product

Page 61: Vittorio Viarengo, ViVi software

August 2007 Page 61

Product Management Team

Inside Customers: – Engineering: Roadmap/Requirements/Use

Cases/Cuts/Tradeoff– Marketing: content-positioning– Sales: training, pre-sales support– Channel: Sis/ISVs– Post-sales escalations

1 (PM)/6 Developers

Page 62: Vittorio Viarengo, ViVi software

August 2007 Page 62

Product Designer(AKA Program Manager) Role

Program mgmt resides between development and product management… and customers

First User of the product Customers:

– Outside: the user of the product– Inside: Engineering- Specs…

Written product specification– The PD is responsible for writing down the specification.

He/she is not responsible for all ideas and all Specs

Use Case Implementation– The PD builds prototypes, implements customers use

cases and oversees the "usability test" of the features/interfaces

Ensure consistent User Experience– API-UI

Page 63: Vittorio Viarengo, ViVi software

August 2007 Page 63

Product Designer: Tell Me More

File Bugs All implementation trade-offs

– Fine-grained trade-offs that impact user visible aspects of the product

Coordination of the product development groups– outside product group

Customer Visits (35%)– In depth technical product presentations to customer– Functional Specification validation– Alpha-Beta validation– Use case gathering

Page 64: Vittorio Viarengo, ViVi software

August 2007 Page 64

Engineering

Architects– Who take accountability for the architecture?– The KISS Principle. Keep It Simple, (and) Stupid

QA– Depending on the product keep a 1-2 to 2-3 QA/Dev ratio– Only hire A– Make QA an engineering problem, avoid delegation

Performance– Have performance engineers if you can afford it or make it a

developer’s problem– Measure, measure and measure from the first build on

Release Management– Track the details to get the product out the door

10-1-1 AKA Eat the Dog Food– Work hard 10 month, take a month off, work one month at a

customer site using your product

Page 65: Vittorio Viarengo, ViVi software

August 2007 Page 65

How We Make Decisions

Clear Decision Owner– One ass to kick

Publish Time Frame Communication Agree, Disagree, Commit

– Lead, follow, or get out of the way!!!

Page 66: Vittorio Viarengo, ViVi software

August 2007 Page 66

Process

Idea Validate the Idea High Level PRD (Product Requirement Document)

– Product Management, involve key engineers/architect

Build Prototype Hit the Road

– Validate high level requirements and prototype with customers

Implementation: The Old Way: Waterfall Specifications

Don’t write single line of code that does not have a design note behind it

Get sign off from Architect, PM and Release manager

Development Adopt and enforce one methodology Build everyday (multiple times a day) Punish who breaks the build

Page 67: Vittorio Viarengo, ViVi software

August 2007 Page 67

Process the New Way

Scrum and Agile Development

Page 68: Vittorio Viarengo, ViVi software

August 2007 Page 68

Scrums Roles Product Owner

– Defines the backlog, represents customers, prioritizes features

– Role may be filled by PM, Dev Managers, VP depending on “product” definition

Scrum-Master– Facilitates the project, identifies and removes impediments– The “Project Manager” of Scrum– Does not have seniority or “power” over scrum team

Project Team– Development Engineers– QA Engineers– Documentation Writers– Product Managers (who are not product owners)

Page 69: Vittorio Viarengo, ViVi software

August 2007 Page 69

The Importance of “Doneness”

Definition of Done

Page 70: Vittorio Viarengo, ViVi software

August 2007 Page 70

Process

Ramp Down – Carefully triage the bugs daily to see what gets pushed out

SHIP Get drunk and take a week off Work on Service Pack 1

Page 71: Vittorio Viarengo, ViVi software

August 2007 Page 71

Conclusions

Embrace Change Stay Close to, Talk to, Listen to, and Pamper your Customers Work Hard, Very Hard

–with Passion

Embrace Change Stay Close to, Talk to, Listen to, and Pamper your Customers Work Hard, Very Hard

–with Passion

Page 72: Vittorio Viarengo, ViVi software

August 2007 Page 72

Grafico Nasdaq Mentor Esempio di Persone Brillanti (David Bau, Indu…) Riconoscere I cicli (Thin-thick, Standards, Chasm) Stay at the course

– Life is made of tradeoff (examples: ViVi Software, Net4Call,…)

Multicultural– Political Correctness and Sexual harassment

Code Rules Talk to customers always (and listen) Eat the dog food

Page 73: Vittorio Viarengo, ViVi software

August 2007 Page 73

Reading Material

Developer Productivity– http://www.joelonsoftware.com/articles/HighNotes.html

How to start a company– http://www.paulgraham.com/start.html

Adam Bostworth Blog– http://www.adambosworth.net/– Kiss Principle

Page 74: Vittorio Viarengo, ViVi software

August 2007 Page 74

Backup Slides

Page 75: Vittorio Viarengo, ViVi software

August 2007 Page 75

1. Cultivate & reward creativity.2. Invest in the creative ecosystem.3. Embrace diversity.4. Nurture the creatives.5. Value risk-taking.6. Be authentic (emphasize uniqueness)7. Invest in and build on quality of place.8. Remove barriers to creativity.9. Take responsibility for change. Development as D.I.Y.10. Ensure that every person, especially children, has the right to creativity. Become a “Steward of creativity.”

*2003/The Creative 100/MemphisSource: Richard Florida, The Rise of the Creative Class

The Memphis Manifesto*Building a Community of Ideas

Page 76: Vittorio Viarengo, ViVi software

August 2007 Page 76

Kevin Roberts’ Credo

1. Ready. Fire! Aim.2. If it ain’t broke ... Break it!3. Hire crazies.4. Ask dumb questions.5. Pursue failure.6. Lead, follow ... or get out of the way!7. Spread confusion.8. Ditch your office.9. Read odd stuff.

10. Avoid moderation!

Page 77: Vittorio Viarengo, ViVi software

August 2007 Page 77

Interview

Pay a contractor for 7 days with one piece of gold and 2 straight cuts

One bicycle rider Two Containers 10 Bags of balls 3 bag, wrong label. Pick one ball Weight 9 Balls Weight 12 Balls 3 lights bulbs 4 man, 1,2,5,10 Gas Station