Performance is a critical architecture quality attribute, and it is a nonfunctional requirement that is used as an acceptance criterion for almost every project and system. Performance impacts usability and the user adoption rate after the system goes live. But performance issues usually arise during the later phases of a project or during system implementation. The probable cause is a lack of nonfunctional requirements on performance at an early stage of the architectural design. This presentation will show how to salvage a troubled project with performance issues by focusing on performance and storage tradeoffs and using the Architecture Analysis Tradeoff Method (ATAM). I will share a specific tailored solution to move data aggregation and sorting from a backend database to Solr or Elasticsearch as an indexing service so that data aggregation and sorting can be indexed ahead of time and accessed over http through query parameters. I will also discuss performance concerns from end to end in systems that deal with heavy data aggregation and sorting using real-world implementation examples. By the end of this session, you will have some strategies to address performance concerns and turn around a troubled project in a short period of time.