The long game
Thriving in Marathon Projects
plan



6+

2007
Frontend
(mostly)
2017
Fullstack
(React, Node, Go, Scala)
2019+
Backend
(mostly)
Freelance
Fintech
E-Commerce
Early React adopter
Open Source
Educator

2017+
Second client
2020+
Tech Lead
2016

First client


My background
why
Or why not
why
specialization change
big projects
TRUST opens Possibilities
just comfy

CAIO
Paradox Interactive
The projects were really fun to work with, plus the people were amazing! Notice how projects is in plural: I did work in a few different projects during my time there.

VALENTYN
Paradox Interactive
C++ projects are inherently long-term due to the specifics of the language and development environments.
It can take up to 6 months to get up to speed on a complex project that has been in development for years or decades.
why not
STAGNATION
BOREDOM
same faces
company policy
strategy
STRATEGY
FEEDBACK
giving feedback
What the F is this...
This code is unreadable...
Never do it like this...
That's a really bad code practice...
Why did it took so long...
giving feedback
What the F is this...
This code is unreadable...
Never do it like this...
That's a really bad code practice...
Looks like you forgot to...
Maybe better restructure it a bit...
I think it's always better to...
Why did it took so long...
If I recall this can lead to...
non-violent communication
Do you want me to help you...
giving feedback

giving feedback: example
"Nice job! Just a few comments"





"Did you mean to pass this argument..."
"It seems you have not thought of..."
"Also probably better to..."
"Otherwise looks good! Glad someone finally fixed it."
giving feedback
What outcome
do I expect?
giving feedback
NEVER MAKE IT PERSONAL
RECEIVING feedback
CHOOSE your battles
(don't argue too often)
RECEIVING feedback
YOUR CODE != you
(don't get attached)
RECEIVING feedback
you might be wrong
(think of a blind spot)
STRATEGY
DRIVING CHANGE

DRIVING CHANGE
"so... many... things... are wrong..."
DRIVING CHANGE
Take a deep breath
be strategic
DRIVING CHANGE
observe first
take time to understand
think of a blind spot
DRIVING CHANGE
make a plan
one thing at a time
DRIVING CHANGE

ALWAYS CONSIDER BUSINESS VALUE
DRIVING CHANGE
CATEGORICAL RIGID THINKING
suggestions
open-ended questions
"collective" decisions

DRIVING CHANGE
think it through

go outside the happy path
be your own opponent
DRIVING CHANGE

CONSIDER THE IMPACT
DRIVING CHANGE
FINISH WHAT YOU STARTED

STRATEGY
personal brand
personal brand
be proactive
personal brand
take responsibility
personal brand
FOCUS!
personal brand
you are constantly evaluated
personal brand
turn off your ego
personal brand
under-promise
over-deliver
Personal brand
fix old problems
personal brand
become internal expert

Gabriel
Zettle / PayPal
Ability to go beyond my role expectations / take ownership of projects. This is one of the things I think they appreciate the most.

JAKUB
DICE
I have acquired so much knowledge that’s hard to document that me leaving will have a short-term impact on the company.

Yevhenii
Paradox Interactive
The client saw in me a reliable developer with experience in the gaming industry, who contributed both to The Code and The Team."
STRATEGY
people
people
be visible
people

avoid office politics
people
Toxic coworkers hate this one trick...
people
MAKE YOUR WORK VISIBLE...
... to the right people


Andrey
Klarna
Socialize, don't get involved in conflicts and know when it's better to not talk. And never gossip!

Pavel
Mojang
What you need to do is to communicate with your colleagues. Don't be a solo-developer. Also attend afterworks and all that stuff.
STRATEGY
stagnation
stagnation
push new tech
Rust
AI
Next.js
K8S
Blockchain
DDD
Deno
IoT
Edge computing
Data science
Another React alternative
stagnation
TAKE RESPONSIBILITY
stagnation
Change teams

bohdan
Klarna
Everything becomes a routine after one year. If you want to develop, change projects and domains within a company.


Q&A
Marathon Projects
By Denis Koltsov
Marathon Projects
- 127