Project management best practices

We’ve built Neo.Tax to handle your data no matter how messy it is. Our system can work even better by following a few simple practices.

This guide can help you improve ticket management practices to produce more accurate projects and time allocations in Neo.Tax.

The three top tips:

  1. Epic/Project names should describe the actual goal

    1. “Banking - New 1099 Filing Features” not “Banking Work”
  2. Ticket titles should explain what you’re building

    “Move MongoAuthProcess into driver source tree to increase stability” not “Auth fixes”

  3. Always move tickets to “In Progress” when you start work

    1. Skipping this step makes your team look less productive than they are and breaks time tracking

For more specific tips, check out the relevant section below.


1. Team/Project Organization

Core Principles

  • Use Projects (JIRA) / Teams (Linear) to organize work by team boundaries
  • Rationale: Clean team separation leads to better project outcomes and clearer ownership
  • Scale appropriately: Companies with 20+ engineers should maintain multiple projects/teams that grow with organizational size
  • Align with business structure: For R&D teams, map projects to actual business products or product groups when possible

2. Epic/Project Naming & Structure

Structure and Naming

  • Avoid cross-team epics/projects - keep ownership boundaries clear

  • Always create child tickets for epics/projects - avoid empty containers

  • Use descriptive, goal-oriented names that clearly communicate the feature or objective

    • Separate and identify Maintenance/Ops work from New Feature work

Naming Convention Examples

Excellent Examples ✅

  • [CloudHosting] ABC 3.2 Improve Abstract Class Base Design
  • Make New ECS Services Easy to Bootstrap
  • TaxWorkflows: Automated 1099 Filing Feature
  • 1099 Filing (Maintenance/Bugs)
  • OED App: New Feature Development

Acceptable Examples ⚠️

  • ABC 3.2 Improve Abstract Class Base Design
  • OED Improvements
  • 1099 Filing Implementation

Poor Examples ❌

  • ABC 3.2
  • Cycle 5'25
  • General Improvements

Best Practices

  • Create focused epics rather than maintaining large, multi-quarter projects
  • Separate work types in naming (e.g., “Maintenance,” “New Features,” “Bug Fixes”)
  • Reference higher-level products in epic/project names when applicable
  • Minimize work outside of organized projects

3. Create Tickets for Senior-Level Work

Create tickets for more senior engineering activities such as:

  • Technical investigations and research
  • Proof of concepts and prototypes
  • Architecture design and documentation
  • Other strategic work that might typically go untracked

These activities often don’t have a ticket, leading to senior engineers work being undercounted.


4. Ticket Titles

Requirements

Titles must clearly describe the specific goal and deliverable of the work.

Title Examples

Excellent Titles ✅

  • Move MongoAuthProcess into driver source tree to increase stability
  • Support parsing $uuid as extended JSON representation for subtype 4 binary
  • Create sections in Draftcard module to support performance optimization

Acceptable Titles ⚠️

  • Update MongoAuthProcess for stability
  • Support parsing $uuid extended JSON
  • Create performance sections in Draftcard module

Poor Titles ❌

  • Auth fixes
  • Parse UUID
  • Draftcard sections

5. Ticket Description Guidelines

Content Standards

  • Provide 1-2 detailed sentences explaining what’s being built/solved and key technical elements
  • Include context and rationale for the work
  • Acceptable variation in format, but avoid empty or minimal descriptions

Description Examples

Strong Descriptions ✅

The external MongoAuthProcess library has caused production instability due to version mismatches and separate release cycles from the main driver. This ticket involves refactoring the authentication process code to be included directly in the driver codebase, reducing the attack surface and improving reliability.

Create a complete vendor API evaluation document that assesses each candidate’s REST API capabilities, including endpoint coverage, request/response formats, SDK availability, and documentation quality. This evaluation will serve as the primary decision-making artifact for the procurement team and should include scoring matrices and implementation effort estimates.

Inadequate Descriptions ❌

  • Empty/null descriptions
  • Move auth thing
  • The authentication isn't working well so we need to fix it by moving some stuff around
  • Overly technical jargon without context: Migrate AUTH-PROC-7734 from EXT-DEP-991 to DRIVER-CORE-v4.8 following patterns in RFC-AUTH-2023

6. Ticket Lifecycle Management

Status Updates

  • Always update to “In Progress” when beginning work
  • Avoid direct “To Do” → “Done” transitions as this reduces time tracking accuracy
  • Create new tickets for additional work rather than reopening closed tickets
  • Err on the side of creating more tickets for better granularity and tracking

7. Ticket Assignment Standards

Assignment Requirements

  • Assign every ticket to a specific person - unassigned work cannot be properly attributed
  • Assign to the actual worker - avoid assigning all tickets to managers when others perform the work
  • Avoid ticket rotation between multiple assignees - instead, split work into separate tickets for each contributor
Esc
↑ ↓ to move Enter to open