The City of Milton has fired its chief financial officer, ending a nearly 19-year career and capping weeks of public dispute over a six-figure accounting discrepancy, a months-long computer outage and a contentious payroll system transition that Curtis Krebs says set the stage for his dismissal.