SlideShare una empresa de Scribd logo
1 de 31
How to be a good developer
Ashley Davis
ashley@codecapers.com.au
@ashleydavis75
www.codecapers.com.au
About me
● 20+ years developer
● CTO of Sortal (https://www.sortal.io/)
● Author of
○ Data Wrangling with JavaScript
○ Bootstrapping Microservices
● Creator of Data-Forge Notebook (http://bit.ly/2nEKbUQ)
● Algo stock trading
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Bootstrapping Microservices
50% off with
code
tsbootstrapping
http://bit.ly/2o0aDsP
Where do we start?
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
But seriously...
How can I be a good developer?
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Do I need to write lots of code?
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Do I need to write lots of code?
No
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
The good news
No single way
Many paths
Forge your own pathway
Be proactive
Be yourself
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
First...
Don’t believe what I say
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Now
Form your own opinion
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Now
Consider, think, articulate
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Then
Tell people about it
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Always
Listen and see the viewpoint of others
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Realise
Everyone has their own opinion
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Sometimes you will be wrong...
Admit it
adjust your opinion
and move on
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
But Ash....
What does this have to do with
development?
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
The point is...
Complex software is built by teams
Teams are made of people
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
No matter how it looks at first, it’s always a
people problem
~ Gerry Weinberg, 1933-2018
The second law of consulting
Secrets of Consulting, 1986
https://blogs.msdn.microsoft.com/alikl/2008/11/12/three-laws-of-consulting-by-gerald-m-weinberg/
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Being a good developer...
Take responsibility for relationships
Communicate
Understand expectations
Ask questions Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
I hire for...
Soft skills
● Communication skills
● Team skills
● Ability/desire to learn and adapt
● Curiosity/passion/interest
Hard skills
● Technical skills
● Technical aptitude
● Experience
What’s unique about you? Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Remember this...
Technical skills get you the interview
Talking gets you the job
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Where does Agile fit in?
? Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
The agile manifesto...
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
https://agilemanifesto.org Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
My philosophy of development
● Start simple
● Iterate
● Keep it working
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Start simple
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Keep it working
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Develop your own philosophy of
development
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Rules to live by when coding
● Leave code better than you found it
● Code for your teammates / future self
● A bit of planning goes a long way
● But don’t plan too hard
● Understand your code
● Ask for help
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Tips for learning
● Focus your learning
● Work with experienced people / find a mentor
● Go to meetups
● Talk to people / ask questions
● Talk at meetups
● Have a hobby project
● Code every day
● Read other people’s code
● Get other people’s code working
● Keep a journal
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
What is good code?
There is no simple answer
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Good videos from Scott Hanselman
https://vimeo.com/39020426
https://www.youtube.com/watch?v=IWPgUn8tL8s
Ashley Davis
@ashleydavis75
ashley@codecapers.com.au
www.codecapers.com.au
Bootstrapping
Microservices:
50% off with code
tsbootstrapping
http://bit.ly/2o0aDsP

Más contenido relacionado

Similar a How to be a good developer

The argument for agile development
The argument for agile developmentThe argument for agile development
The argument for agile development
Toby Osbourn
 
AtlasCamp 2013: ADG / Lean UX
AtlasCamp 2013: ADG / Lean UXAtlasCamp 2013: ADG / Lean UX
AtlasCamp 2013: ADG / Lean UX
colleenfry
 

Similar a How to be a good developer (20)

Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack Development
 
Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack Development
 
Open Source SLAs
Open Source SLAsOpen Source SLAs
Open Source SLAs
 
Microservices with Node.js for BrisJS
Microservices with Node.js for BrisJSMicroservices with Node.js for BrisJS
Microservices with Node.js for BrisJS
 
Flow. The official worst software development approach in history
Flow. The official worst software development approach in historyFlow. The official worst software development approach in history
Flow. The official worst software development approach in history
 
Build Your Own Website with HTML/CSS
Build Your Own Website with HTML/CSSBuild Your Own Website with HTML/CSS
Build Your Own Website with HTML/CSS
 
Leading the Product 2017 - Leisa Reichelt
Leading the Product 2017 - Leisa ReicheltLeading the Product 2017 - Leisa Reichelt
Leading the Product 2017 - Leisa Reichelt
 
6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your Website6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your Website
 
Transforming Your Business with Serverless
Transforming Your Business with ServerlessTransforming Your Business with Serverless
Transforming Your Business with Serverless
 
skillshare organic search strategy
skillshare organic search strategyskillshare organic search strategy
skillshare organic search strategy
 
Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018
 
The argument for agile development
The argument for agile developmentThe argument for agile development
The argument for agile development
 
Software craftsmanship
Software craftsmanshipSoftware craftsmanship
Software craftsmanship
 
How to be a good developer
How to be a good developerHow to be a good developer
How to be a good developer
 
StartupWeekend Brno #1 Friday Deck
StartupWeekend Brno #1 Friday DeckStartupWeekend Brno #1 Friday Deck
StartupWeekend Brno #1 Friday Deck
 
AtlasCamp 2013: ADG / Lean UX
AtlasCamp 2013: ADG / Lean UXAtlasCamp 2013: ADG / Lean UX
AtlasCamp 2013: ADG / Lean UX
 
729 Solutions Helps Connect The Dots - Our Services At A Glance
729 Solutions Helps Connect The Dots - Our Services At A Glance729 Solutions Helps Connect The Dots - Our Services At A Glance
729 Solutions Helps Connect The Dots - Our Services At A Glance
 
Life is not static - your designs shouldn't be either - No Code Conf 2019 Wor...
Life is not static - your designs shouldn't be either - No Code Conf 2019 Wor...Life is not static - your designs shouldn't be either - No Code Conf 2019 Wor...
Life is not static - your designs shouldn't be either - No Code Conf 2019 Wor...
 
Industrial Engineer Portfolio by Slidesgo (1).pptx
Industrial Engineer Portfolio by Slidesgo (1).pptxIndustrial Engineer Portfolio by Slidesgo (1).pptx
Industrial Engineer Portfolio by Slidesgo (1).pptx
 
How to get a serious front end designer job
How to get a serious front end designer jobHow to get a serious front end designer job
How to get a serious front end designer job
 

Más de Ashley Davis

Más de Ashley Davis (13)

Live reload across the stack
Live reload across the stackLive reload across the stack
Live reload across the stack
 
Microservices with Node.js - Livestreamed for Manning
Microservices with Node.js - Livestreamed for ManningMicroservices with Node.js - Livestreamed for Manning
Microservices with Node.js - Livestreamed for Manning
 
Building microservices with Node.js - part 3
Building microservices with Node.js - part 3Building microservices with Node.js - part 3
Building microservices with Node.js - part 3
 
Building microservices with Node.js - part 2
Building microservices with Node.js - part 2Building microservices with Node.js - part 2
Building microservices with Node.js - part 2
 
Building microservices with Node.js - part 1
Building microservices with Node.js - part 1Building microservices with Node.js - part 1
Building microservices with Node.js - part 1
 
When to reinvent the wheel / Building a query language in TypeScript
When to reinvent the wheel / Building a query language in TypeScriptWhen to reinvent the wheel / Building a query language in TypeScript
When to reinvent the wheel / Building a query language in TypeScript
 
Crafting build pipelines with Docker
Crafting build pipelines with DockerCrafting build pipelines with Docker
Crafting build pipelines with Docker
 
Building desktop apps in java script with Electron
Building desktop apps in java script with ElectronBuilding desktop apps in java script with Electron
Building desktop apps in java script with Electron
 
Testing trading strategies in JavaScript
Testing trading strategies in JavaScriptTesting trading strategies in JavaScript
Testing trading strategies in JavaScript
 
Node.js memory limitations
Node.js memory limitationsNode.js memory limitations
Node.js memory limitations
 
Ai and ml study group lecture 1 and 2
Ai and ml study group   lecture 1 and 2Ai and ml study group   lecture 1 and 2
Ai and ml study group lecture 1 and 2
 
Web scraping
Web scrapingWeb scraping
Web scraping
 
Data analysis in JavaScript
Data analysis in JavaScriptData analysis in JavaScript
Data analysis in JavaScript
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

How to be a good developer

  • 1. How to be a good developer Ashley Davis ashley@codecapers.com.au @ashleydavis75 www.codecapers.com.au
  • 2. About me ● 20+ years developer ● CTO of Sortal (https://www.sortal.io/) ● Author of ○ Data Wrangling with JavaScript ○ Bootstrapping Microservices ● Creator of Data-Forge Notebook (http://bit.ly/2nEKbUQ) ● Algo stock trading Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 3. Bootstrapping Microservices 50% off with code tsbootstrapping http://bit.ly/2o0aDsP
  • 4. Where do we start? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 5. But seriously... How can I be a good developer? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 6. Do I need to write lots of code? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 7. Do I need to write lots of code? No Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 8. The good news No single way Many paths Forge your own pathway Be proactive Be yourself Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 9. First... Don’t believe what I say Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 10. Now Form your own opinion Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 11. Now Consider, think, articulate Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 12. Then Tell people about it Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 13. Always Listen and see the viewpoint of others Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 14. Realise Everyone has their own opinion Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 15. Sometimes you will be wrong... Admit it adjust your opinion and move on Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 16. But Ash.... What does this have to do with development? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 17. The point is... Complex software is built by teams Teams are made of people Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 18. No matter how it looks at first, it’s always a people problem ~ Gerry Weinberg, 1933-2018 The second law of consulting Secrets of Consulting, 1986 https://blogs.msdn.microsoft.com/alikl/2008/11/12/three-laws-of-consulting-by-gerald-m-weinberg/ Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 19. Being a good developer... Take responsibility for relationships Communicate Understand expectations Ask questions Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 20. I hire for... Soft skills ● Communication skills ● Team skills ● Ability/desire to learn and adapt ● Curiosity/passion/interest Hard skills ● Technical skills ● Technical aptitude ● Experience What’s unique about you? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 21. Remember this... Technical skills get you the interview Talking gets you the job Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 22. Where does Agile fit in? ? Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 23. The agile manifesto... Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. https://agilemanifesto.org Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 24. My philosophy of development ● Start simple ● Iterate ● Keep it working Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 26. Keep it working Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 27. Develop your own philosophy of development Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 28. Rules to live by when coding ● Leave code better than you found it ● Code for your teammates / future self ● A bit of planning goes a long way ● But don’t plan too hard ● Understand your code ● Ask for help Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 29. Tips for learning ● Focus your learning ● Work with experienced people / find a mentor ● Go to meetups ● Talk to people / ask questions ● Talk at meetups ● Have a hobby project ● Code every day ● Read other people’s code ● Get other people’s code working ● Keep a journal Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 30. What is good code? There is no simple answer Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au
  • 31. Good videos from Scott Hanselman https://vimeo.com/39020426 https://www.youtube.com/watch?v=IWPgUn8tL8s Ashley Davis @ashleydavis75 ashley@codecapers.com.au www.codecapers.com.au Bootstrapping Microservices: 50% off with code tsbootstrapping http://bit.ly/2o0aDsP