Top Banner
z 10 BEZCENNYCH LEKCJI DLA SOFTWARE DEVELOPERA STAJĄCEGO SIĘ SZEFEM FIRMY Wojciech Seliga, Spartez, co-founder & co-CEO, @wseliga
52

10 bezcennych lekcji dla software developera stającego się szefem firmy

Apr 15, 2017

Download

Software

Wojciech Seliga
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

10 BEZCENNYCH LEKCJI DLA SOFTWARE DEVELOPERA STAJĄCEGO SIĘ SZEFEM FIRMY

Wojciech Seliga, Spartez, co-founder & co-CEO, @wseliga

Page 2: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

About me

Page 3: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

32yCoding experience

Page 4: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

16y“Serious” professional experience

Page 5: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

8yRunning Business

Page 6: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Why I am here

Audycja zawiera lokowanie produktu :)

Page 7: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Don’t bring me problems.Bring me solutions.

#0

Page 8: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

The entrepreneur's dilemma#1

Page 9: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

The entrepreneur's dilemma

# Maintaining friendships. # Building a great company. # Spending time with family. # Staying fit. # Getting sleep.

Pick 3 https://twitter.com/randizuckerberg/status/145030699966136320

Page 10: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Dealing with the entrepreneur's dilemma

0

25

50

75

100

2007 2008 2009 2010 2011 2012 2013 2014 2015

Maintaining friendships Building a great company Spending time with familyStaying fit Getting sleep

Page 11: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

The focus means NOT doing things

#2

Page 12: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Focus

• Atlassian does not negotiate prices, does not do customisations, does not implement their products on a customer site.

• IKEA does not manufacture custom stuff, does not offer transport, does not provide assembly service (just via partner companies)

• Twitter does not support tweets longer than 140 characters*

Pict

ure

of ih

tath

o C

C B

Y-N

C 2

.0

Page 13: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

PPHU “<name>EXIM”

Photo by One Way Stock - CC BY-ND 2.0

Page 14: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Time - the most limited and valuable resource

• Founders’ time is super precious - treat it as it would cost 1000 USD per hour. Then think if it’s worth spending on what you spend it.

• Everything you do, own, think about or care for introduces a tax. This tax sooner or later will kill you, unless you start limiting what you do, own, think about or care for.

Meeting Room

Page 15: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

If you want something new, you have to stop doing something old

P E T E R F. D R U C K E R

Photo by AP Photo/Claremont Graduate University

Page 16: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

(De)Focus - our case• Services for Atlassian - interesting for engineers & quite profitable,

limited short and mid-term risk, no diversification • Consulting & custom development - very exciting, access to field

market, source of ideas and real requirements, good money, not scalable, could be risky and tiresome (e.g. migrations scheduled for Easter)

• Training services - great money vs time spent, not scalable, no risk • Own products - risky, potential highest ROI, most emotionally rewarding,

scalable.

Another company

One company

Page 17: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Focus vs. Pivot

Page 18: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

An idea alone is worth nothing, the execution is worth everything

#3

Page 20: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Stupid ideas, great ideasIt really does not matter…

Page 21: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Page 23: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Iterate, You Fools!

Learn and Adjust!

Page 24: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Failure Permitted Zone

Photos courtesy of SpaceX - public domain!

Cost of failure is

close to zero

Page 25: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Automation introduced too early is a waste

#4

Page 26: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Our story - waste at Spartez

Page 27: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Problems with automation

• Once automation is introduced it removes us from better understanding of given process (unless we keep paying close attention to it). If it’s too early…

• Automating of a bad process does not make it any good.

• Usually given process won’t survive the initial contact with the battlefield, automating it too early is then a pure waste.

“There is nothing quite so useless, as doing with great efficiency, something that should not be done at all.”, Peter Drucker

Page 28: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Too much order means seeking your comfort zone

#5

Page 29: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

If everything seems under control, you're not going fast enough

M A R I O A N D R E T T I

Photo by Legends of Motorsports - CC BY-SA 2.0

Page 30: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Engineers seek Order

• By default engineers want to see or establish an Order around them

• Software engineers want it even more, as the software is infinitely flexible - refactoring, renaming, code style, process improvement & automation

• This is all good, but … it’s also seeking your comfort zone - something where everything is under your control, everything is predictable, everything is safe Photo by Rich Renomeron - CC BY-NC-ND 2.0

Page 31: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Page 32: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

The way how one ends, not begins,defines true professionalism

#6

Page 33: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Prawdziwego mężczyznę poznaje się nie po tym, jak zaczyna, ale jak kończy.

L E S Z E K M I L L E R

Photo by Adrian Grycuk - CC BY-SA 3.0

Page 34: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

The beginning vs the end in practice• brownfield projects • deployment • documentation • effective & timely support • bug-fixing • security fixes • performance improvements • handling incidents • roll-backs and roll-forwards • migrations, upgrades • user training & onboarding

• greenfield project • proof of concept • evaluation of new technologies • initial design • planning • “inception” (a la RUP) • prototyping • alpha versions • rewriting • redesigning • rearchitecting

While there is value in the items on the left, users & customers value the items on the right more.

VS

The

begi

nnin

g

The

end

Page 35: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

The most important skill for engineersis communication

#7

Page 36: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Software Engineering is about Humans

• Engineering is about working with humans for humans (solving their problems) • We are taught so little about how to work with humans - how to communicate • Software development nowadays is a team sport

teach

explainconvince

listen

understand

warn

surprise

feel

sympathise

advise

Page 37: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Technical Skills

Communication Skills

Page 38: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Page 39: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

They all suck for 1:1 communication

in comparison to old plain conversation

Photo by Francois Bester - CC BY-ND 2.0

Page 40: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Half-products are worth far less than half.

#8

Page 41: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

“Sure, it’s possible”

• Developers have tendency to treat half-baked products as “done”. • Half-baked means: those which still require installation, customisation, reading

documentation (because they are unintuitive), configuration or even scripting/programming. • “Sure, it’s possible” - is the mantra we love to use, but our customers hate. • A lot is “possible”. It’s even possible that you will be Polish president one day. • “Possible” does not mean anything in software. It has to work here and now - ideally OOB,

intuitively, fast.

A product almost solving customer problem cost only a small fraction (if you are lucky) of what it could cost if it was solving entirely the customer problem.

Page 42: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Matching founders are key#9

Page 44: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

(Theoretical?) Example1. super strong technically, challenging everything and everyone, perfectionist, pessimist 2. bringing order & peace, totally reliable and responsible, predictable, realist 3. super fast builder & learner, caring for customers, mission-impossible person, optimist 4. influencer, inspiring, having strong vision, idealist

Photo from Xiaomi MIUI

Page 45: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Small and simple is easyBig and simple is damn difficult

#10

Page 46: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Dealing with complexity is hard• The simplicity needs constant care (our energy), complexity increases autonomously

otherwise. • One cannot achieve simplicity by adding things to already complex (or complicated)

system. Simplicity is achieved by removing, not adding. • When your organisation grows you are adding things. It’s very difficult to remove

anything. People think that adding is great and removing is bad. I am yet to see how to overcome it.

• Some simple development rules apply nicely: avoid ifs (corner cases), DRY (duplicate functions), name functions well and … refactor.

• It’s easy to kill diversity and innovation by the attempts to achieve simplicity by standardisation. <=>

Page 47: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Simplicity is the ultimate sophistication.L E O N A R D O D A V I N C I

Page 48: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

Do not believe into magic bullets.The context is everything

#11

Page 49: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

So, do we software engineers suck as CEOs?

• understand technology - the best currently vehicle letting us change the world • share knowledge, intensely collaborate (feel secure) • have attention to details, are precise in setting and measuring goals (e.g. growth hacking) • strive for simplicity • are used to work with quick cycles with a short feedback loop - key to learn fast • can fail fast • inspire masses - bringing innovations from IT to all other industries

It’s not that bad after all. We have a huge potential!

Software engineers:Leader

Manager

Page 50: 10 bezcennych lekcji dla software developera stającego się szefem firmy

zz

People who are crazy enough to think they can change the world, are the ones who do

S T E V E J O B S

Page 51: 10 bezcennych lekcji dla software developera stającego się szefem firmy

z

Page 52: 10 bezcennych lekcji dla software developera stającego się szefem firmy

[email protected]

@wseliga

Q&A

We are

hiring

in Gdańsk!

Shameless plug