DEV Community

How to go fast

Chris James on February 28, 2019

This article is for anyone who works in software and wants to keep life simple, less stressful but still keep their employer happy. You'll see how ...
Collapse
 
exadra37 profile image
Paulo Renato

Thanks for this excellent article... The only bit I really don't agree with is the part of skipping code reviews.

Collapse
 
quii profile image
Chris James

I think code reviews are great! Having them as a weekly thing with the whole team to talk about technical issues is lovely.

I dont think it's necessary to check the work of 2 developers who have worked on a task.

Collapse
 
exadra37 profile image
Paulo Renato • Edited

Sorry but I completely disagree here... a merge request with the code review are necessary for each task, otherwise technical debt will grow out of control easily, because you will not get back to it later as you told yourself you would... you know the business always have a huge backlog waiting for you, and once you tell them that the task is done, is done, no time to go back to make SOLID and Clean Code.

Thread Thread
 
quii profile image
Chris James • Edited

Technical debt will occur whether you do pull requests or not. It's unlikely you will get code perfect the first time no matter how many people check it because the correct abstraction today is the wrong one tomorrow.

I will fix technical debt as I see it and in order for teams to go fast the business has to trust the technical team.

And as the post implies, in order to go fast you don't have a huge backlog waiting for you. You have short term goals that you iterate on over time and the team is empowered to make whatever technical choices they need to keep moving fast.

Thread Thread
 
gypsydave5 profile image
David Wickes

If you're in conflict with 'the business', if they're refusing to rely on your expertise, if you can't work collaboratively with 'them', if you're not in control of your own working methods and backlog... you've got bigger problems than can be fixed with code review and pull request fetishism.

Collapse
 
qm3ster profile image
Mihail Malo • Edited

Lots of great stuff, some of which I am still don't follow completely, but should.

But two things I don't agree belong here:

  1. SSR vs SPA: there are excellent established clientside frameworks today.
    It's not that you will need a big overhaul if you start with code you can't port to the clientside and couple frontend and backend code. (You will tho :v)
    It's that for some people/teams SPA is just as fast if not faster to develop than a server-rendered application/site.

  2. Monolith vs monorepo: you say not to do microservices, but really what you mean is that you don't need to have independently versioned deployables with api boundaries at the beginning. You can still benefit from having separate deployable units, such as keeping authentication or emailing out of application server.

Collapse
 
isthatcentered profile image
Edouard Penin

This really resonates with me. I am a "scrum master", but I actually advertise that a dumb simple todo list and a daily "what's our goal this week and are we going to make it ?" is all you need. Keep It Stupid Simple as they said !🥳

Collapse
 
bertilmuth profile image
Bertil Muth

Pretty sound advice.

Collapse
 
enriquemorenotent profile image
Enrique Moreno Tent

I haven't seen a single burn-up chart in my career deliver any kind of actual useful information.

You have won my heart

Collapse
 
jongbeau profile image
Jason • Edited

How do you guys feel about the role of a product manager delivering “specs” for user stories versus developers implementing the user stories without a spec?