Ten lessons I painfully learnt while moving from software developerto entrepreneur/CEO role

  • View
    1.852

  • Download
    0

  • Category

    Software

Preview:

Citation preview

@wseliga#DevoxxPL

Platinum Sponsors:

Ten lessons I painfully learnt while moving from software developer

to entrepreneur/CEO role

Wojciech Seliga

Spartez co-founder & co-CEO, @wseliga

z

About me

zz

Why I am here

Audycja zawiera lokowanie produktu :)

zz

Don’t bring me problems.Bring me solutions.

#0

z

Negative thinking destroys your brain

zz

“But” vs “And”

z

Negative thinking destroys people around you

“Shit, shit … everywhere” “Flowers, flowers … everywhere”

Phot

o by

Oliv

er W

ild, C

C B

Y 2.

0

Phot

o by

ear

l258

, CC

BY-

NC

2.0

zz

The entrepreneur's dilemma#1

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

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

zz

The focus means NOT doing things

#2

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

z

PPHU “<name>EXIM”

Photo by One Way Stock - CC BY-ND 2.0

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

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

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

z

Focus vs. Pivot

zz

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

#3

z

Stupid ideas, great ideasIt really does not matter…

z

z

Iterate, You Fools!

Learn and Adjust!

z

Failure Permitted Zone

Photos courtesy of SpaceX - public domain!

Cost of failure is

close to zero

zz

Automation introduced too early is a waste

#4

zz

Our story - waste at Spartez

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

zz

Too much order means seeking your comfort zone

#5

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

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, “Clean Code”, …

• 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

z

zz

Maintaining full Control and eradicating all Chaosis a very tough battle.

Your competitors may be not be playing this game…

zz

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

#6

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

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

zz

The most important skill for engineersis communication

#7

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

z

Technical Skills

Communication Skills

z

z

They all suck for 1:1 communication

in comparison to old plain conversation

Photo by Francois Bester - CC BY-ND 2.0

zz

Half-products are worth far less than half.

#8

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.

zz

Matching founders are key#9

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, focused on strengths & opportunities, idealist

Photo from Xiaomi MIUI

zz

Small and simple is easyBig and simple is damn difficult

#10

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. <=>

zz

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

zz

Do not believe into magic bullets.The context is everything

#11

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

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

z

wojciech.seliga@spartez.com

@wseliga

Q&A

We are

hiring

in Gdańsk!

Shameless plug