For example, stackexchange.com, without asking the site owner or Google their information about developing the website, is this possible to know what language is used in the back end?

Seems, the website don't have .extension bar, for example .php that can indicated which is developed in PHP, but without the extension, how can I know that?

There are indicators. Some are easier to find, others are harder.


file extensions: .php indicates that the site is written in PHP, .asp indicates classic ASP, .aspx indicates ASP.NET, .jsp indicates Java JSPs, ...
cookie names: JSESSIONID is a widely used cookie name in Java servers
headers: some systems add HTTP headers to their responses
specific HTML content:


patterns such as lots of div-wrappers with a consistent class-naming scheme as used by CMSes like Drupal.
comments in the HTML or meta tags in the head directly/indirectly indicating tool usage

Default error messages or error page design (e.g. pinging a fake URL to see their 404)
Sometimes comment tags are placed in the page for versioning purposes which provide a clue
...


But all of those can be remove/changed/faked. Some are easier to change than others, but none are 100% reliable.

There are various reasons to change those indicators:


You change the underlying technology but don't want to change your URLs
You want to give as little information about your technology as possible
(related to previous) You'd rather not be the first stop for the script kiddie bus when known platform-wide vulnerabilities are discovered/publicized
You want to seem "in" (even 'though that currently means having extension-less REST-style URLs).
...

