Front-end development is essentially what the client sees so its the browser and stuff like the menus, drop downs and other things that makes a website pretty to the user.So normally a front-end developer will be creating and redesigning websites, specifically ones that don’t interact with information stored on a database The common front-end languages are HTML, CSS, and javascript.
Back-end development is more about how the application functions. Specifically things to do with communication between the application and a database. So, they work on the stuff you can’t see in a application like the computations, or the retrieval of information from a database. Normally a back-end developer will know CSS and HTML, but in order to do the programming that comes under back-end development umbrella they need to know languages like Java , Python, and PHP.
There is one other category known as full-stack development which is basically just both front-end and back-end combined. So, they know both sides, generally they prefer one or the other, but being full-stack gives greater flexibility when finding jobs since, you could get a job that falls under either field.