SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20...

33
SOFTWARE ENGINEERING IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA

Transcript of SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20...

Page 1: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

SOFTWARE ENGINEERING IN STARTUPS

Dr. Vadim Zaytsev Universiteit van Amsterdam

20 January 2014 CC-BY-SA

Page 2: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Introduction• Vadim Zaytsev

• aka @grammarware

• currently at UvA

• worked at CWI (Amsterdam)

• worked at Uni Koblenz (Germany)

• studied at VU (Amsterdam), UTwente (Enschede), …

• software language engineer software engineer

Page 3: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

PART I

Page 4: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Startups

• Smaller companies

• Active software engineering

• Challenging & healthy environment

• Sufficiently different culture

Page 5: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Progress

• Horizontal

• globalisation

• 1 to n

• Vertical

• innovation

• 0 to 1

!"#$%&'() '+ ,#)"%-!)&%../

1 &( )

Peter Thiel, Blake Masters, The Challenge of the Future, 2012.

Page 6: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Why startups

• Size matters

• coordination costs

• politics

• incentives

• doing work vs. signalling about doing it

1!$%#+! (&2!34'+! '-5(++'1.!

Peter Thiel, Blake Masters, The Challenge of the Future, 2012.

Page 7: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Why startups?

• Money?

• Fame?

• Changing the world?

• Costs of failure?

Peter Thiel, Blake Masters, The Challenge of the Future, 2012.

Page 8: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Dot com history

• Internet & WWW

• Mosaic & Netscape

• Web presence

• Prefix investing (e-, .com, nano-, 2.0)

• All ended around 2000 Mike Masnick, Nanotech Excitement Boosts Wrong Stock, 2003.

Page 9: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Dot com consequences• Grand visions stability & incrementalism

• Know everything be lean & experiment

• Always advertise no

• Social antisocial

• Sales product

• Rapid monetisation reinvestment

• Talk about the future shut upPeter Thiel, Blake Masters, Party Like It’s 1999?, 2012.

Page 10: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

PART II

Page 12: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

First mover vs. last mover

Geoff Parsons, Newton Lewt, 2008.

Page 13: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

First mover vs. last mover

• Being on the frontier

• Creating your own market

• Escaping competition

Peter Thiel, Blake Masters,The Last Mover Advantage, 2012.

Page 14: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Inside a startup

• Talented people

• Long-term orientation

• Generative spirit

• No diversity (productive disharmony)

Peter Thiel, Blake Masters, Stephen Cohen, Max Levchin, The Mechanics of Mafia, 2012.

Page 15: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Organisation

Page 16: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Organisation

.(4 !

&3#+&

2'62 !

&3#+&

Peter Thiel, Blake Masters, Thiel’s Law, 2012.

Page 17: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Organisation

2'62 %.'6)-!)& +&3#$&#3!

.(4 %.'6)-!)& +&3#$&#3!

Peter Thiel, Blake Masters, Thiel’s Law, 2012.

Page 18: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Organisation

&(&%.'&%3'%)'+-

%)%3$2/"(6-!%&-"(6

'"!%.

Peter Thiel, Blake Masters, Thiel’s Law, 2012.

Page 19: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Technical side

• Lots of freedom

• possible to find exotic stuff

• Ability to use/try new technologies

• Lots of learning

• Quick feedback loops, fast release cycles

• no bureaucracy / little processKudos to Justin Halsall

Page 20: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

More technical details

• In-house vs. external

• Often hacky [yet understood] ways

• Hatred for too much infrastructure

• Scrum, Kanban, TDD… never entirely

• Short-term focus: deploy often

• Unstable environmentSimon Pantzare, Unlearning software engineering, 2013.

Page 21: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

O!en encountered stuff

• Version control

• Some form of agile (+planning poker, etc)

• Code review

• Incrementality / refinement

• Ad hoc modelling

• Continuous integrationTodd Sedano, Carnegie Mellon University, Software Engineering for Startups, 2000.

Page 22: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Ad hoc modelling

Ali Khajeh-Hosseini, Software Engineering for Startups, 2012.

Page 23: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Startup community

• Open community

• Meetups & events

• Everybody is helpful

• Easy to ask for advice/feedback

Kudos to Justin Halsall

Page 24: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Networking

• “Is it efficient?”

• No explicit black-tie dinners

• Always networking

• Keeping up

Kudos to Justin Halsall

Page 25: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Pitching

• You are smart

• You have an idea

• …

• PROFIT!

Peter Thiel, Blake Masters, The Pitch, 2012.

Page 26: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

How to pitch

• Have a clear goal

• Know your audience

• Make it simple

• Do a pre-pitch

Peter Thiel, Blake Masters, The Pitch, 2012.

Page 27: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Financial side

• Lower pay up front

• Growing with the company

• People only get happier up to $70’000

Peter Thiel, Blake Masters, The Challenge of the Future, 2012.

Page 28: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Political side

• No bureaucracy

• Equal politics

• Input is welcome

• Lots of responsibility

Kudos to Justin Halsall

Page 29: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

How to get hired?

• Join a startup instead of creating one

• Fit

• Broad set of skills

• Get to know people

• … (3 things mentioned before) …Peter Thiel, Blake Masters, After Web 2.0, 2012.

Page 30: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

PART III

Page 31: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

Summary

• Aim at startups if you want to do innovative stuff (0 to 1)

• Build up and maintain a broad set of skills

• Network and be aware of surroundings

• Be open to learn & collaborate

• Enjoy

Page 32: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

See also

Page 33: SOFTWARE ENGINEERING IN STARTUPS · IN STARTUPS Dr. Vadim Zaytsev Universiteit van Amsterdam 20 January 2014 CC-BY-SA. Introduction ... Ad hoc modelling Ali Khajeh-Hosseini, Software

• Sources of information/inspiration

• given on the bottom of each slide

• kudos to Justin Halsall and all other folks at H&F

• kudos to Peter Thiel & Blake Masters for CS183.

• Slides?

• http://grammarware.net/slides/2014/startups.pdf

• Fonts?

• Avdira — George Douros, Unicode Fonts for Ancient Scripts, 2009.

• Finger Paint — Ralph Oliver du Carrois, 2013.

• Wild Honey — Denis Sherbak, 2013

• Questions? Ask or email or tweet.