Optimize your
development workflow
Rafael Corrêa Gomes
Rafael Corrêa Gomes
• Brazilian !

• Magento Master 2018 🏆

• Innovation Lab 2018 ⚡

• Head of Tecnology - Imagination Media

• Organizer of Magento Meetup São Paulo

• OpenSource tools (~58k Magento developers)

• Board Member M2 JS Developer Certification
Rafael Corrêa Gomes
Objectives of this talk
What I would like to hear some years ago
Objectives of this talk
• Help to improve your mindset

• Show the possibilities

• Help to improve the skill of solve problem

• Help to start a plan today
Rafael Corrêa Gomes
What do you will learn?
•How I think about optimisations

•Useful tools to develop

•Paradigms to avoid
Rafael Corrêa Gomes
When I start to optimize everything?
Solve more problems in less time
What happened
•Much time creating the wheel again

•A lot of bureaucracy and fewer solutions

•Developers saying to follow some rules but they don’t know why

•I had the wish to do more cool things, not repetitive
Rafael Corrêa Gomes
Myths and paradigms
1. Type everything to learn 

2. Use just the tool which is working

3. Don't use tools with a lot of features

4. Avoid GUI tools

5. Use tool x not y

6. You can't innovate alone
Rafael Corrêa Gomes
My favorite concepts to apply today
Learn with other professionals
Fighter concept
1. Keep training all, but focus on your best

2. Practice to show your best on the stage

3. Practice hours to execute in minutes

4. To have a trainer

5. Prepare an A/B/C practice

6. Prepare the result you want in your mind
Rafael Corrêa Gomes
Mechanical arm concept
1. Do repetitive work once

2. Isolate repetitive solution

3. Create micro products

4. Ask before, use the community power

5. Take a note of other heuristics
Rafael Corrêa Gomes
Mechanical arm concept
Rafael Corrêa Gomes
Title
0
20
40
60
80
Junior Pleno Senior
Without With
Jr Dev Dev Sr Dev
My main 6 parts of a
development workflow
The 6 parts of a development workflow
1.Scaffold

2.Develop

3.Test
Rafael Corrêa Gomes
4.Integrate

5.Optimize

6.Deploy
Solve the performance issue
1.Break the process if it's large

2.Detect which one you spend more time than expected

3.Think about what you could you use more times

4.Take notes in each step

5.When need it, separate a time to read
Rafael Corrêa Gomes
Tools to help you
Terminal
Rafael Corrêa Gomes
• n98-magerun2
• bgnotify
• terminal-notifier
• jira
• web-search
• docker
• composer
• git
• git-extras
• git-open
• git-flow
• git-flow-completion
• iwhois
• nvm
• zsh-autosuggestions
• zsh-syntax-highlighting
Magento 2 Local
Rafael Corrêa Gomes
IDE
Rafael Corrêa Gomes
Code Snippets
Rafael Corrêa Gomes
Git && Deploy
Rafael Corrêa Gomes
https://goo.gl/UsVNva
Tips to start a plan
It’s how I do nowadays
I do nowadays
1. Keep a notebook beside 

2. Never go to a meeting without a notebook and a pen

3. Write your solutions in Magento Stack Exchange

4. Focus on concepts, not tools

5. Try to help even more people with your own solutions

6. Use the calendar to estimate for your own

7. Discover new optimize methods with other developers
Rafael Corrêa Gomes
Questions?
Thank you!
Keep in touch
linkedin.com/in/rafaelcgstz
twitter.com/rafaelcgstz
github.com/rafaelstz
rafaelcgstz@gmail.com

Optimize your development workflow

  • 1.
  • 2.
    Rafael Corrêa Gomes •Brazilian ! • Magento Master 2018 🏆 • Innovation Lab 2018 ⚡ • Head of Tecnology - Imagination Media • Organizer of Magento Meetup São Paulo • OpenSource tools (~58k Magento developers) • Board Member M2 JS Developer Certification Rafael Corrêa Gomes
  • 3.
    Objectives of thistalk What I would like to hear some years ago
  • 4.
    Objectives of thistalk • Help to improve your mindset • Show the possibilities • Help to improve the skill of solve problem • Help to start a plan today Rafael Corrêa Gomes
  • 5.
    What do youwill learn? •How I think about optimisations •Useful tools to develop •Paradigms to avoid Rafael Corrêa Gomes
  • 6.
    When I startto optimize everything? Solve more problems in less time
  • 7.
    What happened •Much timecreating the wheel again •A lot of bureaucracy and fewer solutions •Developers saying to follow some rules but they don’t know why •I had the wish to do more cool things, not repetitive Rafael Corrêa Gomes
  • 8.
    Myths and paradigms 1.Type everything to learn 2. Use just the tool which is working 3. Don't use tools with a lot of features 4. Avoid GUI tools 5. Use tool x not y 6. You can't innovate alone Rafael Corrêa Gomes
  • 9.
    My favorite conceptsto apply today Learn with other professionals
  • 10.
    Fighter concept 1. Keeptraining all, but focus on your best 2. Practice to show your best on the stage 3. Practice hours to execute in minutes 4. To have a trainer 5. Prepare an A/B/C practice 6. Prepare the result you want in your mind Rafael Corrêa Gomes
  • 11.
    Mechanical arm concept 1.Do repetitive work once 2. Isolate repetitive solution 3. Create micro products 4. Ask before, use the community power 5. Take a note of other heuristics Rafael Corrêa Gomes
  • 12.
    Mechanical arm concept RafaelCorrêa Gomes Title 0 20 40 60 80 Junior Pleno Senior Without With Jr Dev Dev Sr Dev
  • 13.
    My main 6parts of a development workflow
  • 14.
    The 6 partsof a development workflow 1.Scaffold 2.Develop 3.Test Rafael Corrêa Gomes 4.Integrate 5.Optimize 6.Deploy
  • 15.
    Solve the performanceissue 1.Break the process if it's large 2.Detect which one you spend more time than expected 3.Think about what you could you use more times 4.Take notes in each step 5.When need it, separate a time to read Rafael Corrêa Gomes
  • 16.
  • 17.
    Terminal Rafael Corrêa Gomes •n98-magerun2 • bgnotify • terminal-notifier • jira • web-search • docker • composer • git • git-extras • git-open • git-flow • git-flow-completion • iwhois • nvm • zsh-autosuggestions • zsh-syntax-highlighting
  • 18.
  • 19.
  • 20.
  • 21.
    Git && Deploy RafaelCorrêa Gomes https://goo.gl/UsVNva
  • 22.
    Tips to starta plan It’s how I do nowadays
  • 23.
    I do nowadays 1.Keep a notebook beside 2. Never go to a meeting without a notebook and a pen 3. Write your solutions in Magento Stack Exchange 4. Focus on concepts, not tools 5. Try to help even more people with your own solutions 6. Use the calendar to estimate for your own 7. Discover new optimize methods with other developers Rafael Corrêa Gomes
  • 24.
  • 25.
    Thank you! Keep intouch linkedin.com/in/rafaelcgstz twitter.com/rafaelcgstz github.com/rafaelstz rafaelcgstz@gmail.com