A Walmart maintenance worker on the job for nearly two decades says he was fired for moving too slowly to turn in $350 he found in the parking lot.

Michael Walsh, 45, says he was called into the manager's office of the Walmart Neighborhood Market in Niskayuna, N.Y., on November 6 and promptly fired for "gross misconduct," The Times Union reports.

Walsh was picking up garbage in the store parking lot when he found a $5 bill. He says he immediately went inside and turned the cash over to his manager.

"I kind of froze and didn't want any trouble."

- Michael Walsh

When he went back outside to resume his duties, Walsh says he found a small stack of $20 and $10 bills. The bills were loose without an envelope or identification as to who owned the cash.

The man says he resumed collecting garbage and then counted the money when he had a moment. When he went back inside the store to find his manager 30 minutes later, Walsh says he heard a commotion, The Hamilton Spectator reports.

"A woman was yelling at a manager, freaking out that she lost her money and I got nervous," Walsh said. "I kind of froze and didn't want any trouble."

He turned the money over to the manager and says he heard nothing else about the cash.

Two days later, he was fired after a manager showed him surveillance tape which showed 30 minutes had elapsed from the time he found the cash to the time he turned it in, The Times Union reports.

Walsh says he was forced to turn over his badge and his 10 percent off Walmart discount card after 18 years on the job.

"I enjoyed my job, I was a good employee and always got to work on time," Walsh says. "I got treated like a common criminal."

The Times Union says a Walmart manager declined to speak with them about the termination.

Walsh, who worked as a full-time employee, has just gotten a raise to $14.95 an hour. He says he is now seeking employment at other retail stores in New York.