Keynote: Agile development - key to
smart software development
Jerlyn Manohar
Talk Agenda
● Who am I?
● What do I do?
● So, what’s all the buzz about agile?
● Ok, I’ll bite - what’s the best way to adopt agile?
● What will happen if we adapt to an agile workflow?
● Um, I have a question...
Who am I?
● Full-stack developer
● Responsible for the DevOps
cycle of all proprietary tools
at my workplace
What do I do?
● Choose technology stack based
on assessment of cost and risk
● Plan agile development sprints
and ensure the team meets
milestones
● Perform code-reviews
● Rapid prototype tools to meet
supervisor-defined specs
● Resource management
● Create short and long-term
roadmaps for resource
investment
So, what’s all the buzz about agile?
[1]
Ok - what’s the best way to
adapt agile for my projects?
● Have a user story : As a [person], I want to do
[that] so I can [do this] [2]
● If you’re in a team, have a daily meeting to
discuss individual contributions [3]
● Favor iterative and incremental[4]
developmental model
● Have milestone retrospectives at the end of
every sprint to critically look at your work[5]
What will happen if we adapt to an agile workflow?
● You have a functioning product at the end of each sprint
● Knowing that you are going to re-visit the product over and over makes you focus a lot on getting the key
features and functionality right.
● You and your programming skills evolve along with the product
● You are able to show progress to stakeholders and give them the opportunity to get involved every step of
the way.
● Prevents software transportation waste as the entire DevOps cycle is tested each sprint
Do you have any
tips for me to
improve my
code quality?
● Document! Your!! Code!!!
Seriously - have a readME.md, docstrings, and
comments! Lint is the way to go!
● Your project is never “done”
Don’t get so attached to your work that you
cannot sit through a code review/pair
programming exercise without flinching.
● Be prepared for tech stack
change mid-project
Yes, it’s daunting to go back to the board and
re-do everything, but all the magic takes place
when you step out of your comfort zone.
“It’s easy to write code, it’s really
hard to write good code.” - Linux
Torvalds
What should I do if I
am considering a
career in software
development?
● Get unapologetically excited
about tech
● Have a strong work ethic
● Can own up to your mistakes
● Can multi-task
● Appreciate (or) make your own
programming memes ;-)
Thank You
You can mail me at jerlynmanohar@gmail.com for questions on python, for
mentorship on projects in image/video processing, GUI programming, automation,
database management, web development, and for lectures/talks on software
development & readme-driven development.
Resources
1. Alex Cowan, Darden School of Business, University of Virginia - screencapture
taken from his Coursera course on ‘DevOps and Delivery’
2. http://www.agilemodeling.com/artifacts/userStory.htm
3. https://www.mountaingoatsoftware.com/agile/scrum/meetings/daily-scrum
4. https://www.agilealliance.org/glossary/iterative-development/
5. https://keyholesoftware.com/2011/12/19/the-agile-retrospective-the-art-of-looki
ng-back-to-move-forward/

Agile Development: Key to smart software development

  • 1.
    Keynote: Agile development- key to smart software development Jerlyn Manohar
  • 2.
    Talk Agenda ● Whoam I? ● What do I do? ● So, what’s all the buzz about agile? ● Ok, I’ll bite - what’s the best way to adopt agile? ● What will happen if we adapt to an agile workflow? ● Um, I have a question...
  • 3.
    Who am I? ●Full-stack developer ● Responsible for the DevOps cycle of all proprietary tools at my workplace
  • 4.
    What do Ido? ● Choose technology stack based on assessment of cost and risk ● Plan agile development sprints and ensure the team meets milestones ● Perform code-reviews ● Rapid prototype tools to meet supervisor-defined specs ● Resource management ● Create short and long-term roadmaps for resource investment
  • 5.
    So, what’s allthe buzz about agile? [1]
  • 6.
    Ok - what’sthe best way to adapt agile for my projects? ● Have a user story : As a [person], I want to do [that] so I can [do this] [2] ● If you’re in a team, have a daily meeting to discuss individual contributions [3] ● Favor iterative and incremental[4] developmental model ● Have milestone retrospectives at the end of every sprint to critically look at your work[5]
  • 7.
    What will happenif we adapt to an agile workflow? ● You have a functioning product at the end of each sprint ● Knowing that you are going to re-visit the product over and over makes you focus a lot on getting the key features and functionality right. ● You and your programming skills evolve along with the product ● You are able to show progress to stakeholders and give them the opportunity to get involved every step of the way. ● Prevents software transportation waste as the entire DevOps cycle is tested each sprint
  • 8.
    Do you haveany tips for me to improve my code quality? ● Document! Your!! Code!!! Seriously - have a readME.md, docstrings, and comments! Lint is the way to go! ● Your project is never “done” Don’t get so attached to your work that you cannot sit through a code review/pair programming exercise without flinching. ● Be prepared for tech stack change mid-project Yes, it’s daunting to go back to the board and re-do everything, but all the magic takes place when you step out of your comfort zone. “It’s easy to write code, it’s really hard to write good code.” - Linux Torvalds
  • 9.
    What should Ido if I am considering a career in software development? ● Get unapologetically excited about tech ● Have a strong work ethic ● Can own up to your mistakes ● Can multi-task ● Appreciate (or) make your own programming memes ;-)
  • 10.
    Thank You You canmail me at jerlynmanohar@gmail.com for questions on python, for mentorship on projects in image/video processing, GUI programming, automation, database management, web development, and for lectures/talks on software development & readme-driven development.
  • 11.
    Resources 1. Alex Cowan,Darden School of Business, University of Virginia - screencapture taken from his Coursera course on ‘DevOps and Delivery’ 2. http://www.agilemodeling.com/artifacts/userStory.htm 3. https://www.mountaingoatsoftware.com/agile/scrum/meetings/daily-scrum 4. https://www.agilealliance.org/glossary/iterative-development/ 5. https://keyholesoftware.com/2011/12/19/the-agile-retrospective-the-art-of-looki ng-back-to-move-forward/