1. Tell me what is long polling?

Long polling is a web application development pattern used to emulate pushing data from the server to the client. When the long polling is used, the client sends a request to the server, and the connection remains intact until the server is ready to send data to the client. The connection will be closed only after the data is sent back to the client or connection timeout occurs.

2. Tell us do you find any particular languages or technologies intimidating?

I've often felt that the more I learn, the less I feel like I know. Solving one mystery opens up ten others. Having the interviewee tell you their faults can reveal a lot about what they know.

3. Tell me the advantage of HTTP/2 as compared with HTTP 1.1?

The advantage of HTTP/2 compared to HTTP/1.1 is

☛ HTTP headers data compression
☛ Server push technologies
☛ Over a single TCP connection parallel loading of page elements
☛ Prioritization of request

4. Explain me how Do You Make Border Rounded With CSS3?

Yes, in CSS3, there is a <border-radius> property which allows creating an element with rounded corners. We can apply the same style to all the sides and make the corners round.

The <border-radius> property has four individual properties <border-top-left-radius>, <border-top-right-radius>, <border-bottom-left-radius> and <border-bottom-right-radius>.

5. Tell me what Is A Class Selector?

In CSS, a class selector is an expression which begins with a full stop (“.”) and followed by the name of a class. The class attribute could be a space-separated list of items, and one of those must match with the class name specified in the selector.

Here is an example which selects a div and modified it style.

.sampleclass {font-family: Ariel; font-size: 10; background: green;}

<div class="sampleclass">....</div>

6. Tell me what are a few sites you admire and why?

Find out what inspires them. While it doesn't necessarily "take one to know one," a great developer should always have a few impressive favorites.

7. Tell me what Are Transitions In CSS3?

CSS3 transitions help to create easy and fast animation effect. They not only give us control to change the value of a property but also let it proceed slowly for the given duration.

We can use the following CSS properties.

transition, transition-delay, transition-duration, transition-property, and transition-timing-function.

8. Tell me what Is A Canvas? And What Is Its Default Border Size?

Canvas is an HTML5 element which can draw graphics on the fly with the help of JavaScript. The <canvas> element can only contain graphics. It supports a no. of methods for drawing paths, boxes, circles, text, and images.

By default, It has no border. However, it allows using CSS to change the border style.

9. Do you know table-less XHTML? Do you validate your code?

Weed out the old-school table-driven design junkies! Find a developer who uses HTML elements for what they were actually intended. Also, many developers will say they can go table-less, but when actually building sites they still use tables out of habit and/or convenience. Possibly draw up a quick navigation menu or article and have them write the markup for it. To be tricky, you could draw up tabular data - give them bonus points if they point out that a table should be used in that scenario :)

10. Tell us what web browser do you use?

There is a right answer to this question: all of them. A competent developer should be familiar with testing cross-browser compatibility by using all the major web browsers. Obviously they'll have a primary browser they use for surfing, but their answer to this question might be a good way for you to segue to asking how extensively they test cross-browser issues. Also, if it's some kind of css/html position seeing what toolbars they have installed can be a good metric of their skillset.

11. Tell me what Is HTML5 Web Storage?

HTML5 brought this new ability to store web pages within the browser cache. This web storage is not only faster than the cookies but secured too. It is capable of storing a large amount of data without compromising the performance of the website.

Also, note that the cached data is not must for every server request. Instead, it gets utilized only when the page asks for it. And only the web page which gets the data stored can access it.

12. Tell us what Is Difference Between <Window.Onload> And <OnDocumentReady>?

The <onload> event doesn’t invoke until the page gets finished loading of CSS and images. It could cause a significant delay in rendering of the web page.

As a web developer, we have to ensure the page should load as quick as possible. The event <onDocumentReady> lets us only wait for the DOM to initialize instead of delaying any action required.

13. Tell us how Does Canvas Differ From SVG?

Here are a few points elaborating the differences between Canvas and SVG.

☛ Canvas depends on the resolution whereas SVG doesn't.
☛ Canvas does not allow event handlers whereas SVG does provide the support for event handlers.
☛ Canvas is ideal for graphic-intensive games whereas SVG doesn't intend for gaming.
☛ It works well for small rendering areas whereas SVG may perform better for large rendering areas like Google map.

14. Can you fix this code, please?

Give them some broken code written in the development language they are expected to know for the position. Have them go through it line by line and point out all the mistakes.

15. Tell me what is the w3c?

Standards compliance in web development is where everything is (hopefully?) going. Don't ask them to recite the w3c's mission statement or anything, but they should at least have a general idea of who they are.

16. Tell me how Does JavaScript Handle Automatic Type Conversion?

As per ECMA Script standard, JavaScript is dynamic as well as weakly typed language with first-class functions which means a function can accept other functions as arguments.

Also, it does support auto-type conversion. Whenever an operator or a statement doesn't get a value of the expected type, then the conversion takes place automatically.

17. Tell me what Are Different Types Of CSS?

Below are the different types of CSS.

☛ Embedded – It adds the CSS styles using the <style> attribute.
☛ Inline – It adds the CSS to the HTML elements.
☛ Linked/External – It adds an external CSS file to the HTML document.

18. Tell us what web developer should know?

A good web developer should know

☛ HTML
☛ CSS
☛ SQL
☛ PHP/Ruby/Python
☛ JQuery
☛ JavaScript

19. Tell me your level of competence in a *nix shell environment?

See how well they work without their precious GUI. Ask some basic questions like how they would recursively copy a directory from one place to another, or how you'd make a file only readable by the owner. Find out what OSs they have experience with.

20. Tell us do you prefer to work alone or on a team?

This is an important question to ask depending on the work environment. If your project is going to require close interaction with other developers it's very handy to have someone who has had that kind of experience. On the other hand, many developers thrive while going solo. Try to find a developer that fits your needs.

21. Please explain what Are Different Types Of Popup Boxes Available In JavaScript?

JavaScript allows following types of dialog boxes.

☛ Alert – It just has an <Ok> button to proceed.
☛ Confirm – It pops up a window showing up <Ok> and <Cancel> buttons.
☛ Prompt – It gives a dialog asking for user input followed by showing <Ok>/<Cancel> buttons.

22. Tell me which Property Do You Use To Modify The Face Of A Font In CSS?

First of all, please note that both the terms <@font-face> and <font-family> refers to changing the font of an HTML element. However, there is a slight difference between the two.

☛ The <@font-face> is a CSS rule that facilitates the use of custom fonts on a web page.
☛ The <font-family> is a CSS property which specifies the font for a web element.

Also, to change the font or face of a font, we need to set the <font-family> property. Please see the below example.

@font-face {
font-family: myCustomFont;
src: url(sansation_light.woff);
}

body {
font-family: 'myCustomFont', Fallback, Ariel;
}

23. Tell me in HTML what tag can be used for a multi-line text input control?

For multi-line text input control, you can use the “textarea tag”.

24. Tell us what sized websites have you worked on in the past?

Find a developer that has experience similar in size to the project you're putting together. Developers with high traffic, large scale site expertise may offer skills that smaller-sized developers don't, such as fine tuning apache or optimizing heavily hit SQL queries. On the other hand, developers who typically build smaller sites may have an eye for things that large scale developers don't, such as offering a greater level of visual creativity.

25. Explain me the key advantages of HTTP/2 as compared with HTTP 1.1?

HTTP/2 provides decreased latency to improve page load speed by supporting:

☛ Data compression of HTTP headers
☛ Server push technologies
☛ Loading of page elements in parallel over a single TCP connection
☛ Prioritization of requests
☛ An important operational benefit of HTTP/2 is that it avoids the head-of-line blocking problem in HTTP 1.

26. Tell us what Is The Difference Between <Alert()> And <Confirm()> Popup Boxes?

The <alert()> method displays a message in a popup box and has only one <Ok> button.

But the <confirm()> method asks for confirmation from the user so that it can get the opinion of visitors. It has two buttons i.e. <Yes> and <No>.

In short, <alert()> popup is to display the messages to the users whereas the <confirm()> dialog is good for knowing the choices of the visitors.

27. Tell me what Are Pseudo-Classes In CSS?

A Pseudo-Class is a CSS technique to set the style when the element changes its state.

For example.

Edit the style upon mouse hover event.
Set the style when an element gets focus.
Apply different styles for visited/unvisited links.
selector:pseudo-class {
property:value;
}

28. Tell me what Is An ID Selector?

The ID selector uses the “ID” attribute of the target HTML element to select it. The constraint to work is that the ID should be unique within a page so that the selector can point it out correctly.

To build an ID selector expression, start with a hash (#) character, followed by the id of the element.

Here is an example which selects a paragraph element using its ID.

#sample {padding: 10px;}

<p id="selector">...</p>

29. Tell us how can you refer to CSS file in the web page?

You can refer to the .CSS file in the webpage by using the <link> tag. It should be kept between <head></head>tag. For example <linkhref=”/css/mystyle.css” type=”text/css” rel=”stylesheet”/>

30. Tell me what Are The New Form Elements Introduced In HTML5?

Here is the list of new form elements available in HTML5.

☛ <datalist> – It specifies a list of options for input controls.
☛ <keygen> – This tag generates an encryption key.
☛ <output> – It defines the result of an expression.

31. Show me your code snippets?

Whether it's plain old HTML or freakishly advanced ruby on rails, ask for code samples. Source code can say more about a persons work habits than you think. Clean, elegant code can often be indicative of a methodical, capable developer. A resume may say 6+ years of perl experience, but that could mean 7 years of bad, unreadable perl. Also, make sure you ask for a lot of source code, not just a few isolated functions or pieces of HTML. Anyone can clean up 20-30 lines of code for an interview, you want to see the whole shebang. Don't ask for a full, functional app, but make sure it's enough that you can tell it's really what their code is like.

32. Tell me what's the difference between GET and POST?

Both are methods used in HTTP requests. Generally it is said that GET is to download data and PUT is to upload data. But we can do both downloading as well as uploading either by GET/POST.

GET:
☛ If we are sending parameters in a GET request to the server, then those parameters will be visible in the URL, because in GET, parameters are append to the URL. So there's a lack of security while uploading to the server.
☛ We can only send a limited amount of data in a GET request, because the URL has its max limit and we can not append a long data string to the URL.

POST:
☛ If we are using POST then we are sending parameters in the body section of a request. If we send data after using encryption in the body of an http request, it's quite a bit more secure.
☛ We can send a lot more data using POST.
☛ Note: GET is faster in the case of just getting data using a static API call in cases where we don't have to pass any parameters.

33. Explain how comfortable are you with writing HTML entirely by hand?

Although their resume may state that they're an HTML expert, often times many developers can't actually write an HTML document from top to bottom. They rely on an external publisher or have to constantly flip back to a reference manual. Any developer worth a damn should at least be able to write a simple HTML document without relying on external resources. A possible exercise is to draw up a fake website and ask them to write the HTML for it. Keep it simple and just make sure they have the basics down - watch for mistakes like forgetting the <head> </head> tags or serious misuse of certain elements. If they write something like: <image src="/some/image.gif">, it might be a good hint to wrap things up and call the next interviewee.

34. Tell us what are a few personal web projects you've got going on?

Almost all developers have personal web projects they like to plug away at in their spare time. This is another question that can help differentiate the passionate developers from the clock-punchers. It's also a good question to end an interview with, as it's usually easy (and fun) for them to answer.

35. Do you know what Are The New DocType And Charset In HTML5?

The DocType element communicates the HTML version to the browser. It usually appears in the first line of code of an HTML page. Unlike the earlier versions/standards of HTML, DocType has got a simplified format in HTML5.

<!doctype html>
The CharSet is a new meta tag attribute in HTML5 which configures the character encoding.

<meta charset=”UTF-8″>