"By the Waters of Babylon" is a wonderful story. It often shocks readers to find out that the story is taking place far into a hypothetical future. What is fun to examine is that the shock at the story's ending should not have been overly surprising. Readers are given multiple clues that the story is not happening in the past.
The first clue is very early in the story. John is tasked with going into houses to find pieces of metal. A reader should immediately ask why pieces of metal exist in already-made homes. If the story was happening far in the past, metal wouldn't likely be found in dwellings.
Once John begins his journey, readers start getting more specific clues that the story is taking place in the future. The "god-roads" is one specific clue. It's clear that the god-roads are different in some way, and once John gets to the river, we see that the roads somehow span across the entire river and have "vines" (cables) that are suspended throughout the bridge and road.
When John finally gets into the main city, the clues start to get more overt. We get English words strewn about the place, doors, rooms with colored flooring, windows, and handles labeled "hot" and "cold" that lead the reader to realize that this was once a more developed and affluent society.