SlideShare a Scribd company logo
1 of 18
Sniper Team 101
Sniper Team Composition
• 1 – 7 developers (currently 5)
• 0.25 designers (floating resource from the
  design team)
• 1 QA as of February
Sniper Team Formation
• Created about 3 years ago with the brief to fix
  small bugs, add small features and investigate
  and fix customer problems
• Increasingly involved in intern, graduate and
  junior developer training
• All around fix it team for problems in the
  development process
• Floating resource for projects that require
  additional help
Sniper Team Process
• The sniper team work falls into two main
  categories: tickets and issues

  – Tickets: requests from CC/Billing/Bank Feeds/
    Enablement to investigate and resolve problems that
    customer and partners are experiencing with the Xero
    system
  – Issue: Requests for changes or enchantments to the
    Xero system. This can result from a ticket, customer
    request, product managers, design, QA...
Issue workflow
Features or Functional Changes
• Trello: used as a collection point for requests
  for changes to the Xero system.
• Prioritisation meetings with mayor
  stakeholders to determine which changes will
  be included in the upcoming release
• Issues created in Boss and assigned to the
  upcoming release
• Development work completed by Sniper Team
• Tested by QA
• Release to live
Bug Fixes
• Issues created in Boss by QA and assigned to
  the Sniper Team for an upcoming release
• Development work completed by Sniper Team
• Tested by QA
• Release to live
Ticket Workflow
         (From the sniper team perspective)

• The tickets status is changed to “In Sniper”.
  This is the first point at which we’ll see the
  ticket
• The ticket is assigned to a developer and the
  investigation begins
Investigation
• Login into the organisation via the CC user on
  live and attempt to reproduce the problem
• Look in Splunk to try and find the error.
• Check the organisation on livestage if possible
• Check the code to see if it’s a systematic
  problem
Problem Source
• Bad data in the database
• A bug in the code that is triggered by a
  particular situation
• A combination of the two.
Fixing Tickets
• Bad data: Fix the data in the database (some
  of the sniper team have access to the
  production database), then try and determine
  how the data got there
• Bug: Raise an issue in Boss. The number of
  customers affected and the severity of the
  problem will determine what release the fix
  will go into
Common Ticket Examples
• Ghost Payment
  (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=90060d22-c79a-4a72-bb73-3369799a443c)
  (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=a28880cd-49ba-47fa-bfa9-bb8cef5fb612)


• Statement lines not showing as reconciled
  when they are
   (
  https://go.xero.com/Bank/ViewTransaction.aspx?bankTransactionID=baa18b06-f854-4a19-82db-5b4f65f2a62b&accountID=50EAC01
  )


• Statement lines reconciled to deleted
  payments
  (https://go.xero.com/Bank/Statement.aspx?accountID=50eac01b-5424-4224-b906-4ab9cd3aa8ca&statementID=5bfcfcb0-
  85ec-4cdb-b32c-f8a967c8dca6)
• Bank reconciliation report showing statement
  lines that are reconciled as un-reconciled.
  (https://go.xero.com/Bank/TransactionDetails.aspx?accountID=50eac01b-5424-4224-b906-
  4ab9cd3aa8ca&statementLineID=5f9b3a82-9618-44e2-8e8c-b7b57d9d7553)


• Approved invoices that have no journals
  (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=5e43e2b5-cc65-4aa6-8a26-63c492e19621)


• Report/Page timeouts
• Reactivating deleted bank accounts that have
  bank feeds
• Deprecation that can be rolled back
• Deleting user accounts
• Reactivating deleted trial organisations

More Related Content

Similar to Sniper team 101

How we measure quality of JIRA deployments to Cloud?
How we measure quality of JIRA deployments to Cloud?How we measure quality of JIRA deployments to Cloud?
How we measure quality of JIRA deployments to Cloud?
Stowarzyszenie Jakości Systemów Informatycznych (SJSI)
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
Nishkarsh Gupta
 
The art of system and solution testing
The art of system and solution testingThe art of system and solution testing
The art of system and solution testing
gaoliang641
 

Similar to Sniper team 101 (20)

DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
 
How we measure quality of JIRA deployments to Cloud?
How we measure quality of JIRA deployments to Cloud?How we measure quality of JIRA deployments to Cloud?
How we measure quality of JIRA deployments to Cloud?
 
Rakuten openstack
Rakuten openstackRakuten openstack
Rakuten openstack
 
Patterns of the Lambda Architecture -- 2015 April - Hadoop Summit, Europe
Patterns of the Lambda Architecture -- 2015 April - Hadoop Summit, EuropePatterns of the Lambda Architecture -- 2015 April - Hadoop Summit, Europe
Patterns of the Lambda Architecture -- 2015 April - Hadoop Summit, Europe
 
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
 
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
 
In (database) automation we trust
In (database) automation we trustIn (database) automation we trust
In (database) automation we trust
 
What CS Class Didn't Teach About Testing
What CS Class Didn't Teach About TestingWhat CS Class Didn't Teach About Testing
What CS Class Didn't Teach About Testing
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Requirement gathering team
Requirement gathering teamRequirement gathering team
Requirement gathering team
 
QWA
QWAQWA
QWA
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Notes
NotesNotes
Notes
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
re:Invent 2018 - Scaling and Supporting Your Production App
re:Invent 2018 -  Scaling and Supporting Your Production Appre:Invent 2018 -  Scaling and Supporting Your Production App
re:Invent 2018 - Scaling and Supporting Your Production App
 
Effective Scrum
Effective ScrumEffective Scrum
Effective Scrum
 
Customer Driven DevOps at Work: Operating the Digital Turnstile [FutureStack1...
Customer Driven DevOps at Work: Operating the Digital Turnstile [FutureStack1...Customer Driven DevOps at Work: Operating the Digital Turnstile [FutureStack1...
Customer Driven DevOps at Work: Operating the Digital Turnstile [FutureStack1...
 
DDS_UI_WFs_13012022.pptx
DDS_UI_WFs_13012022.pptxDDS_UI_WFs_13012022.pptx
DDS_UI_WFs_13012022.pptx
 
The art of system and solution testing
The art of system and solution testingThe art of system and solution testing
The art of system and solution testing
 
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
 

Sniper team 101

  • 2. Sniper Team Composition • 1 – 7 developers (currently 5) • 0.25 designers (floating resource from the design team) • 1 QA as of February
  • 3. Sniper Team Formation • Created about 3 years ago with the brief to fix small bugs, add small features and investigate and fix customer problems • Increasingly involved in intern, graduate and junior developer training • All around fix it team for problems in the development process
  • 4. • Floating resource for projects that require additional help
  • 5. Sniper Team Process • The sniper team work falls into two main categories: tickets and issues – Tickets: requests from CC/Billing/Bank Feeds/ Enablement to investigate and resolve problems that customer and partners are experiencing with the Xero system – Issue: Requests for changes or enchantments to the Xero system. This can result from a ticket, customer request, product managers, design, QA...
  • 7. Features or Functional Changes • Trello: used as a collection point for requests for changes to the Xero system.
  • 8. • Prioritisation meetings with mayor stakeholders to determine which changes will be included in the upcoming release • Issues created in Boss and assigned to the upcoming release • Development work completed by Sniper Team • Tested by QA • Release to live
  • 9. Bug Fixes • Issues created in Boss by QA and assigned to the Sniper Team for an upcoming release • Development work completed by Sniper Team • Tested by QA • Release to live
  • 10. Ticket Workflow (From the sniper team perspective) • The tickets status is changed to “In Sniper”. This is the first point at which we’ll see the ticket • The ticket is assigned to a developer and the investigation begins
  • 11. Investigation • Login into the organisation via the CC user on live and attempt to reproduce the problem • Look in Splunk to try and find the error.
  • 12.
  • 13. • Check the organisation on livestage if possible • Check the code to see if it’s a systematic problem
  • 14. Problem Source • Bad data in the database • A bug in the code that is triggered by a particular situation • A combination of the two.
  • 15. Fixing Tickets • Bad data: Fix the data in the database (some of the sniper team have access to the production database), then try and determine how the data got there • Bug: Raise an issue in Boss. The number of customers affected and the severity of the problem will determine what release the fix will go into
  • 16. Common Ticket Examples • Ghost Payment (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=90060d22-c79a-4a72-bb73-3369799a443c) (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=a28880cd-49ba-47fa-bfa9-bb8cef5fb612) • Statement lines not showing as reconciled when they are ( https://go.xero.com/Bank/ViewTransaction.aspx?bankTransactionID=baa18b06-f854-4a19-82db-5b4f65f2a62b&accountID=50EAC01 ) • Statement lines reconciled to deleted payments (https://go.xero.com/Bank/Statement.aspx?accountID=50eac01b-5424-4224-b906-4ab9cd3aa8ca&statementID=5bfcfcb0- 85ec-4cdb-b32c-f8a967c8dca6)
  • 17. • Bank reconciliation report showing statement lines that are reconciled as un-reconciled. (https://go.xero.com/Bank/TransactionDetails.aspx?accountID=50eac01b-5424-4224-b906- 4ab9cd3aa8ca&statementLineID=5f9b3a82-9618-44e2-8e8c-b7b57d9d7553) • Approved invoices that have no journals (https://go.xero.com/AccountsReceivable/View.aspx?InvoiceID=5e43e2b5-cc65-4aa6-8a26-63c492e19621) • Report/Page timeouts
  • 18. • Reactivating deleted bank accounts that have bank feeds • Deprecation that can be rolled back • Deleting user accounts • Reactivating deleted trial organisations