You are supporting a retail banking product that collects customer feedback from mobile app reviews, call-center notes, email surveys, branch comments, and complaint forms. The dataset contains roughly 2 million records over 24 months, with short comments mixed with longer free-text narratives, inconsistent spelling, duplicated submissions, and a small amount of code-switched English and Spanish text. Only a small subset is labeled for sentiment or issue category, but the business wants to identify the main drivers of dissatisfaction and track how they change across products such as credit cards, deposits, loans, and digital banking. You need an NLP solution that can turn raw feedback into actionable themes for customer satisfaction improvement.
How would you design and implement this analysis pipeline so it surfaces sentiment, recurring complaint topics, and high-impact pain points, and how would you evaluate whether the outputs are reliable enough to guide customer experience decisions?