SlideShare a Scribd company logo
1 of 27
Download to read offline
How to be a good developer
Ashley Davis
Email: ashley@codecapers.com.au
Twitter: ashleydavis75
About me
● 20+ years developer
● CTO of Sortal
● Author of
○ Data Wrangling with JavaScript
○ Bootstrapping Microservices
● Creator of Data-Forge Notebook
● Stock trader
Where do we start?
But seriously...
How can I be a good developer?
The good news
There are many ways to be a good developer
There is no single way
Forge your own pathway
First...
Don’t believe what I say
Now
Form your own opinion
Then
Tell people about it
Always
Listen and see the viewpoint of others
Realise
Everyone has their own opinion
When you are wrong...
Admit it
adjust your opinion
and move on
But Ash....
What does this have to do with
development?
The point is...
Complex software is built by teams
Teams are made of people
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/
Being a good developer...
Take responsibility for relationships
Communicate
Understand expectations
Ask questions
I hire for...
Soft
Communication skills
Team skills
Ability/desire to learn and adapt
Curiosity/passion/interest
Hard
Technical skills
Technical aptitude
Experience
What’s something unique that you bring to the table?
Remember this...
Technical skills get you the interview.
Talking gets you the job.
Where does Agile fit in?
?
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
My philosophy of development
● Iterate
● Start simple
Development in small increments
Start simple
Develop your own philosophy of
development
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
Tips for learning
● Focus your learning
● Work with experienced people / find a mentor
● Go to meetups and talk to people / ask questions
● Have a hobby project / code every day
● Read other people’s code / get other people’s code
working
Questions
Good videos from Scott Hanselman
https://vimeo.com/39020426
https://www.youtube.com/watch?v=IWPgUn8tL8s
Contact me
Email:
ashley@codecapers.com.au
Twitter:
ashleydavis75

More Related Content

What's hot

A letter to my past self (a career perspective) :: Sinf FEUP 2020
A letter to my past self (a career perspective) :: Sinf FEUP 2020A letter to my past self (a career perspective) :: Sinf FEUP 2020
A letter to my past self (a career perspective) :: Sinf FEUP 2020Pedro Gustavo Torres
 
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PM
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PMWebinar: Unlock Your Superhero to Fly Purposely by fmr Disney PM
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PMProduct School
 
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)Pedro Gustavo Torres
 
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.Clientjoy.io
 
Scrum Forum Hangzhou China 2009 Research Tasks Discussion
Scrum Forum Hangzhou China 2009 Research Tasks DiscussionScrum Forum Hangzhou China 2009 Research Tasks Discussion
Scrum Forum Hangzhou China 2009 Research Tasks Discussionsimonwang520
 
We design orientation class
We design orientation classWe design orientation class
We design orientation classMunirMahmud3
 
How to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMHow to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMProduct School
 
JavaDay 2017: 10 tips to become an awesome technical lead (v4)
JavaDay 2017: 10 tips to become an awesome technical lead (v4)JavaDay 2017: 10 tips to become an awesome technical lead (v4)
JavaDay 2017: 10 tips to become an awesome technical lead (v4)Bart Blommaerts
 
HA5 Project Charter
HA5 Project CharterHA5 Project Charter
HA5 Project Chartercopelandadam
 
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)Bart Blommaerts
 
How to be a good (product) manager
How to be a good (product) managerHow to be a good (product) manager
How to be a good (product) managerUgo Bataillard
 
Empowering New Programmers Through Introductory Arduino Workshops
Empowering New Programmers Through Introductory Arduino WorkshopsEmpowering New Programmers Through Introductory Arduino Workshops
Empowering New Programmers Through Introductory Arduino WorkshopsHailee Kenney
 
Working Remotely as a Product Manager by Eventbrite Sr PM
Working Remotely as a Product Manager by Eventbrite Sr PMWorking Remotely as a Product Manager by Eventbrite Sr PM
Working Remotely as a Product Manager by Eventbrite Sr PMProduct School
 
Building and supporting drupal websites
Building and supporting drupal websitesBuilding and supporting drupal websites
Building and supporting drupal websitesNTEN
 
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?Building and Supporting Drupal Websites: In-House, Outhouse, or Both?
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?NTEN
 

What's hot (19)

A letter to my past self (a career perspective) :: Sinf FEUP 2020
A letter to my past self (a career perspective) :: Sinf FEUP 2020A letter to my past self (a career perspective) :: Sinf FEUP 2020
A letter to my past self (a career perspective) :: Sinf FEUP 2020
 
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PM
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PMWebinar: Unlock Your Superhero to Fly Purposely by fmr Disney PM
Webinar: Unlock Your Superhero to Fly Purposely by fmr Disney PM
 
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)
Agile is still dead :: Portugal - Brasil 2020 (Café com Rey)
 
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.
Becoming a 10 x developer - Bhautik Bharadave, Front-End Engineer, Gridle.
 
Scrum Forum Hangzhou China 2009 Research Tasks Discussion
Scrum Forum Hangzhou China 2009 Research Tasks DiscussionScrum Forum Hangzhou China 2009 Research Tasks Discussion
Scrum Forum Hangzhou China 2009 Research Tasks Discussion
 
We design orientation class
We design orientation classWe design orientation class
We design orientation class
 
How to run a hackday
How to run a hackdayHow to run a hackday
How to run a hackday
 
How to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMHow to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PM
 
JavaDay 2017: 10 tips to become an awesome technical lead (v4)
JavaDay 2017: 10 tips to become an awesome technical lead (v4)JavaDay 2017: 10 tips to become an awesome technical lead (v4)
JavaDay 2017: 10 tips to become an awesome technical lead (v4)
 
HA5 Project Charter
HA5 Project CharterHA5 Project Charter
HA5 Project Charter
 
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)
JavaOne 2017: 10 tips to become an awesome Technical Lead (v3)
 
How to be a good (product) manager
How to be a good (product) managerHow to be a good (product) manager
How to be a good (product) manager
 
Empowering New Programmers Through Introductory Arduino Workshops
Empowering New Programmers Through Introductory Arduino WorkshopsEmpowering New Programmers Through Introductory Arduino Workshops
Empowering New Programmers Through Introductory Arduino Workshops
 
Working Remotely as a Product Manager by Eventbrite Sr PM
Working Remotely as a Product Manager by Eventbrite Sr PMWorking Remotely as a Product Manager by Eventbrite Sr PM
Working Remotely as a Product Manager by Eventbrite Sr PM
 
ID IT-107
ID IT-107ID IT-107
ID IT-107
 
Gsoc 2016-iit-snk-v1.0
Gsoc 2016-iit-snk-v1.0Gsoc 2016-iit-snk-v1.0
Gsoc 2016-iit-snk-v1.0
 
Building and supporting drupal websites
Building and supporting drupal websitesBuilding and supporting drupal websites
Building and supporting drupal websites
 
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?Building and Supporting Drupal Websites: In-House, Outhouse, or Both?
Building and Supporting Drupal Websites: In-House, Outhouse, or Both?
 
Jugbd meet up 6
Jugbd meet up 6Jugbd meet up 6
Jugbd meet up 6
 

Similar to How to be a good developer

I'm Graduating Soon. Help! How Do I Get into the Tech Field?
I'm Graduating Soon. Help! How Do I Get into the Tech Field?I'm Graduating Soon. Help! How Do I Get into the Tech Field?
I'm Graduating Soon. Help! How Do I Get into the Tech Field?Tessa Mero
 
Arc Ready Q2 Blended Deck
Arc Ready Q2   Blended DeckArc Ready Q2   Blended Deck
Arc Ready Q2 Blended DeckPhilip Wheat
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
gettingintothetechfieldwhatnext-210526205624.pdf
gettingintothetechfieldwhatnext-210526205624.pdfgettingintothetechfieldwhatnext-210526205624.pdf
gettingintothetechfieldwhatnext-210526205624.pdfroystoncdsouza7
 
Project Management in the Real World
Project Management in the Real WorldProject Management in the Real World
Project Management in the Real WorldKate Daly
 
How to build a successful career with your professional Certifications
How to build a successful career with your professional CertificationsHow to build a successful career with your professional Certifications
How to build a successful career with your professional CertificationsOjiugo Ajunwa
 
Intro to Codecademy Nashville + Lightning Talks
Intro to Codecademy Nashville + Lightning TalksIntro to Codecademy Nashville + Lightning Talks
Intro to Codecademy Nashville + Lightning TalksSarahMorrisOKeefe
 
Hostway Project Management Communication
Hostway Project Management CommunicationHostway Project Management Communication
Hostway Project Management CommunicationHostway Romania
 
Webinar - Design thinking 101 - 2018-07-24
Webinar - Design thinking 101 - 2018-07-24Webinar - Design thinking 101 - 2018-07-24
Webinar - Design thinking 101 - 2018-07-24TechSoup
 
The Software Developer
The Software DeveloperThe Software Developer
The Software DeveloperOlaogunJames
 
Rsqrd AI: Making Conversational AI Work for Everybody
Rsqrd AI: Making Conversational AI Work for EverybodyRsqrd AI: Making Conversational AI Work for Everybody
Rsqrd AI: Making Conversational AI Work for EverybodySanjana Chowdhury
 
What every developer can learn from startups
What every developer can learn from startupsWhat every developer can learn from startups
What every developer can learn from startupsOleg Podsechin
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for DevelopersBarElin
 
The elements of product success for designers and developers
The elements of product success for designers and developersThe elements of product success for designers and developers
The elements of product success for designers and developersNick Myers
 
Open Source From The Trenches: How to Get Involved with Open Source and be Su...
Open Source From The Trenches: How to Get Involved with Open Source and be Su...Open Source From The Trenches: How to Get Involved with Open Source and be Su...
Open Source From The Trenches: How to Get Involved with Open Source and be Su...Chris Aniszczyk
 
2017 04-10 how to effectively grow a development team - php york-shire2017
2017 04-10 how to effectively grow a development team - php york-shire20172017 04-10 how to effectively grow a development team - php york-shire2017
2017 04-10 how to effectively grow a development team - php york-shire2017Jeroen van der Gulik
 

Similar to How to be a good developer (20)

I'm Graduating Soon. Help! How Do I Get into the Tech Field?
I'm Graduating Soon. Help! How Do I Get into the Tech Field?I'm Graduating Soon. Help! How Do I Get into the Tech Field?
I'm Graduating Soon. Help! How Do I Get into the Tech Field?
 
Arc Ready Q2 Blended Deck
Arc Ready Q2   Blended DeckArc Ready Q2   Blended Deck
Arc Ready Q2 Blended Deck
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
gettingintothetechfieldwhatnext-210526205624.pdf
gettingintothetechfieldwhatnext-210526205624.pdfgettingintothetechfieldwhatnext-210526205624.pdf
gettingintothetechfieldwhatnext-210526205624.pdf
 
Project Management in the Real World
Project Management in the Real WorldProject Management in the Real World
Project Management in the Real World
 
How to build a successful career with your professional Certifications
How to build a successful career with your professional CertificationsHow to build a successful career with your professional Certifications
How to build a successful career with your professional Certifications
 
Intro to Codecademy Nashville + Lightning Talks
Intro to Codecademy Nashville + Lightning TalksIntro to Codecademy Nashville + Lightning Talks
Intro to Codecademy Nashville + Lightning Talks
 
Hostway Project Management Communication
Hostway Project Management CommunicationHostway Project Management Communication
Hostway Project Management Communication
 
Restless developer
Restless developerRestless developer
Restless developer
 
Webinar - Design thinking 101 - 2018-07-24
Webinar - Design thinking 101 - 2018-07-24Webinar - Design thinking 101 - 2018-07-24
Webinar - Design thinking 101 - 2018-07-24
 
Orientation session
Orientation sessionOrientation session
Orientation session
 
The Software Developer
The Software DeveloperThe Software Developer
The Software Developer
 
Rsqrd AI: Making Conversational AI Work for Everybody
Rsqrd AI: Making Conversational AI Work for EverybodyRsqrd AI: Making Conversational AI Work for Everybody
Rsqrd AI: Making Conversational AI Work for Everybody
 
What every developer can learn from startups
What every developer can learn from startupsWhat every developer can learn from startups
What every developer can learn from startups
 
Whydesignersfail fin
Whydesignersfail finWhydesignersfail fin
Whydesignersfail fin
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
 
The elements of product success for designers and developers
The elements of product success for designers and developersThe elements of product success for designers and developers
The elements of product success for designers and developers
 
Open Source From The Trenches: How to Get Involved with Open Source and be Su...
Open Source From The Trenches: How to Get Involved with Open Source and be Su...Open Source From The Trenches: How to Get Involved with Open Source and be Su...
Open Source From The Trenches: How to Get Involved with Open Source and be Su...
 
2017 04-10 how to effectively grow a development team - php york-shire2017
2017 04-10 how to effectively grow a development team - php york-shire20172017 04-10 how to effectively grow a development team - php york-shire2017
2017 04-10 how to effectively grow a development team - php york-shire2017
 
Developers Edge
Developers EdgeDevelopers Edge
Developers Edge
 

More from Ashley Davis

Live reload across the stack
Live reload across the stackLive reload across the stack
Live reload across the stackAshley Davis
 
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 ManningAshley Davis
 
Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack DevelopmentAshley Davis
 
Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack DevelopmentAshley Davis
 
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 3Ashley Davis
 
Microservices with Node.js for BrisJS
Microservices with Node.js for BrisJSMicroservices with Node.js for BrisJS
Microservices with Node.js for BrisJSAshley Davis
 
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 2Ashley Davis
 
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 1Ashley Davis
 
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 TypeScriptAshley Davis
 
How to be a good developer
How to be a good developerHow to be a good developer
How to be a good developerAshley Davis
 
Crafting build pipelines with Docker
Crafting build pipelines with DockerCrafting build pipelines with Docker
Crafting build pipelines with DockerAshley Davis
 
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 ElectronAshley Davis
 
Testing trading strategies in JavaScript
Testing trading strategies in JavaScriptTesting trading strategies in JavaScript
Testing trading strategies in JavaScriptAshley Davis
 
Node.js memory limitations
Node.js memory limitationsNode.js memory limitations
Node.js memory limitationsAshley Davis
 
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 2Ashley Davis
 
Data analysis in JavaScript
Data analysis in JavaScriptData analysis in JavaScript
Data analysis in JavaScriptAshley Davis
 

More from Ashley Davis (17)

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
 
Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack Development
 
Rapid Fullstack Development
Rapid Fullstack DevelopmentRapid Fullstack Development
Rapid Fullstack Development
 
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
 
Microservices with Node.js for BrisJS
Microservices with Node.js for BrisJSMicroservices with Node.js for BrisJS
Microservices with Node.js for BrisJS
 
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
 
How to be a good developer
How to be a good developerHow to be a good developer
How to be a good developer
 
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
 

Recently uploaded

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 

Recently uploaded (20)

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 

How to be a good developer

  • 1. How to be a good developer Ashley Davis Email: ashley@codecapers.com.au Twitter: ashleydavis75
  • 2. About me ● 20+ years developer ● CTO of Sortal ● Author of ○ Data Wrangling with JavaScript ○ Bootstrapping Microservices ● Creator of Data-Forge Notebook ● Stock trader
  • 3. Where do we start?
  • 4.
  • 5. But seriously... How can I be a good developer?
  • 6. The good news There are many ways to be a good developer There is no single way Forge your own pathway
  • 10. Always Listen and see the viewpoint of others
  • 12. When you are wrong... Admit it adjust your opinion and move on
  • 13. But Ash.... What does this have to do with development?
  • 14. The point is... Complex software is built by teams Teams are made of people
  • 15. 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/
  • 16. Being a good developer... Take responsibility for relationships Communicate Understand expectations Ask questions
  • 17. I hire for... Soft Communication skills Team skills Ability/desire to learn and adapt Curiosity/passion/interest Hard Technical skills Technical aptitude Experience What’s something unique that you bring to the table?
  • 18. Remember this... Technical skills get you the interview. Talking gets you the job.
  • 19. Where does Agile fit in? ?
  • 20. 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
  • 21. My philosophy of development ● Iterate ● Start simple
  • 22. Development in small increments
  • 24. Develop your own philosophy of development
  • 25. 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
  • 26. Tips for learning ● Focus your learning ● Work with experienced people / find a mentor ● Go to meetups and talk to people / ask questions ● Have a hobby project / code every day ● Read other people’s code / get other people’s code working
  • 27. Questions Good videos from Scott Hanselman https://vimeo.com/39020426 https://www.youtube.com/watch?v=IWPgUn8tL8s Contact me Email: ashley@codecapers.com.au Twitter: ashleydavis75