At a mid-sized startup, the front end developers are probably also responsible for Django / Rails, and the back end developers are responsible for things like managing the Hadoop cluster and the machine learning components.
And at a large company, anything built with existing libraries might be considered front end, whereas back end might be creating a new database or whatever. I don't claim to know how Google works, but as companies get bigger the back end tends to go further back, and so the 'front end' encompasses more also.