• Trusted by:

Hire CSS developers and engineers

Gleb Polushkin, United States

Member since October 23, 2013
Gleb is a front-end developer with over a decade of experience developing for browsers and Flash and nearly as much with Photoshop and graphic design. He is very skilled with responsive web design. He is a relaxed but careful communicator, equally comfortable in leadership and collaborative roles, and works well in diverse teams. Click to continue

Mikael Kessler, United States

Member since October 14, 2013
Mikael is a detail-oriented front-end engineer that uses technologies like HTML5, CSS3, and jQuery to deliver high quality, standard-compliant builds. He has extensive experience and proficiency with Ruby on Rails, MySQL, and Heroku, among other server-side technologies and app deployment platforms. Click to continue

Flavio Escobar, Brazil

Member since April 23, 2014
Flavio is a top developer and an aspiring entrepreneur. He has extensive experience and skills with web and game development and is also proficient with mobile applications. He is a master of PHP, JavaScript, and ActionScript. Click to continue

Asael Arenas, Colombia

Member since December 10, 2014
Asael has over fifteen years of experience in information science and internet media. Since the late 90's, he has been committed to using technology to develop applications that are attractive and useful for users and efficient for customers, for the benefit of trade, research, entertainment, and education. Asael is a pleasant communicator, equally comfortable leading a team, collaborating with colleagues, and working independently. Click to continue

Piotr Gawle, Cyprus

Member since August 27, 2014
Piotr is a software engineer with over 10 years of experience in developing web applications. He specializes in crafting efficient, graphics-heavy, and fast mobile and desktop JavaScript, HTML, and CSS products. He understands full-stack development and has a background in PHP, Java EE, and MySQL. He has worked in environments from corporations to startups. He is an Agile practitioner and Scrum Master with extensive management experience. Click to continue
A hiring guide
The Vital Guide to CSS Interviewing

CSS has been in use for more than 20 years and has become an integral part of any front-end development. Therefore, there is no shortage of developers with CSS listed on their resumes. Locating CSS developers is fairly easy, but choosing the perfect one is that much more of a challenge. This guide offers a sampling of effective questions to help you identify the best CSS developers who are experts in their field.

Trustpilot
Toptal on TV
"Toptal is killing it, it kind of owns this market."
Andrew Ross Sorkin Reviews Toptal
Cnbc 02e66b
"Tech companies simply cannot find the quality employees they want to hire. The solution: Toptal."
Liz Claman´s Review of Toptal
Fox 7ef901
Toptal in the press
“Despite accelerating demand for coders, Toptal prides itself on almost Ivy League-level vetting.”
Selina Wang
“Toptal allows corporations to quickly assemble teams that have the right skills for specific projects.”
Steven Norton
Testimonials
“We had a wonderful experience with our Toptal consultant. He was very reliable and punctual, delivering excellent work on a budget—we will certainly be using him again!”
Barbara Karpf
President @ DecoratorsBest
“Toptal helped us when we had a hiring gap we needed to fill. The developer we received was excellent, with a great work ethic and fit in very well with the team. We are very happy with the service and would definitely consider using Toptal again in future should we need additional help. ”
David Gildeh
CEO @ Dataloop.io
“We have been with Toptal for over two years and have hired through them multiple times. They've never failed to deliver with world-class talent and customer service and have been our first choice when scaling our team.”
Stuart Reavley
Product Lead @ ClassDojo
“I really enjoyed my experience with Toptal. Searching for a developer was both painless and engaging, and the first match was a perfect fit! Toptal is a fantastic way to find talented developers for small or large aspects of your project.”
Willem Shepherd
Creative Director @ Mookieyams
“With the pressure on and millions watching the Cleveland Cavaliers during the NBA Playoffs, Toptal delivered the talent and expertise needed to launch a brand new fan engagement platform.”
Conor Kenney
Director of Professional Services @ Cleveland Cavaliers
“We've been very pleased with our experience working with Toptal. Their team was incredibly helpful in helping us find the perfect developer for our project. The work was stellar, the communication was excellent and we couldn't have been happier with the overall experience. We're excited to work with Toptal for more projects in the future!”
Ryan Walker
Director, Product Management @ Rand McNally
“Dario was recently assigned to our company in order to help with PHP and JW Video player refinements. He listens extremely well and offers common sense suggestions that save both time and money. He speeds up the process by asking great questions, and he just delivered our first project on time. His redesigned player offers a very pleasing appearance and delivers functions that are both elegant and intuitive.”
Dennis B. Jacobs
President @ College TV Ticket
“We struggled for weeks to find a developer or architect with expertise in a niche API, but to no avail. When we linked up with Toptal, they connected us with the very expert we needed, and a week later we were hard at work making progress! The whole process was very smooth and we ended up with a new feature we couldn't have done without Toptal.”
Thomas Honeyman
COO @ FindMySong
“The task of finding and hiring the right developers and programmers can be daunting, especially for startups. After sifting through countless unfit freelancers, we came across Toptal. They were able to fill our open position in no time, and I'd highly recommend the service!”
Josef Holm
CEO @ Tubestart
“Our experience with Toptal was very good. We had an open ended development project when we got started and the programmer from Toptal was very helpful, working with us on everything from the top level outline all the way down to development and delivery of functioning code." ”
Michael Milton
VP of Engineering @ SLANTRANGE
“We needed a talented developer and we needed him/her very quickly. So we turned to Toptal and couldn't be happier with the results! Our Toptal freelancer has contributed extraordinary knowledge, talent, and startup experience to our team. We will continue to work with Toptal to fulfill our future talent needs.”
Lindsay Fairman
Founder & Owner @ FairTech Labs, LLC
“Ignacio is one of the most diligent software developers that we have ever worked with—we feel like he's part of the family. He has always been flexible enough to work on our team's schedule and never misses deadlines. Toptal gets you the talent you need, on your timeline, keeping the process very low friction.”
Austin Evarts
CEO @ GoChime
“We've had multiple needs for various development talent and Toptal doesn't disappoint. They truly focus on matching the best developer to our specific engagements, and they continue to stay connected in an effort to exceed our expectations at all times”
Mindle Hastings
Sr. Product Manager @ Bodybuilding.com
Hire a top CSS developer now.
Toptal is a marketplace for top CSS developers, engineers, programmers, coders, architects, and consultants. Top companies and start-ups choose Toptal freelancers for their mission-critical software projects.
Full
profile
Gleb PolushkinUnited States
Gleb is a front-end developer with over a decade of experience developing for browsers and Flash and nearly as much with Photoshop and graphic design. He is very skilled with responsive web design. He is a relaxed but careful communicator, equally comfortable in leadership and collaborative roles, and works well in diverse teams.
[click to continue…]
CSSCSS3LESSHTML5HTMLJavaScriptReact.jsjQueryGitMac OS
Hire
Full
profile
Mikael KesslerUnited States
Mikael is a detail-oriented front-end engineer that uses technologies like HTML5, CSS3, and jQuery to deliver high quality, standard-compliant builds. He has extensive experience and proficiency with Ruby on Rails, MySQL, and Heroku, among other server-side technologies and app deployment platforms.
[click to continue…]
CSSCSS3HTMLFacebook APIjQuery
Hire
Full
profile
Flavio EscobarBrazil
Flavio is a top developer and an aspiring entrepreneur. He has extensive experience and skills with web and game development and is also proficient with mobile applications. He is a master of PHP, JavaScript, and ActionScript.
[click to continue…]
CSSCSS3SQLSQL-99JavaScriptPHPHTMLBootstrapjQueryFlash BuilderjQuery File UploadMySQL WorkbenchJoomla 3
Hire
Full
profile
Asael ArenasColombia
Asael has over fifteen years of experience in information science and internet media. Since the late 90's, he has been committed to using technology to develop applications that are attractive and useful for users and efficient for customers, for the benefit of trade, research, entertainment, and education. Asael is a pleasant communicator, equally comfortable leading a team, collaborating with colleagues, and working independently.
[click to continue…]
CSSCSS3HTMLJavaScriptjQueryAdobe FireworksWeb DevelopmentFront-end
Hire
Full
profile
Piotr GawleCyprus
Piotr is a software engineer with over 10 years of experience in developing web applications. He specializes in crafting efficient, graphics-heavy, and fast mobile and desktop JavaScript, HTML, and CSS products. He understands full-stack development and has a background in PHP, Java EE, and MySQL. He has worked in environments from corporations to startups. He is an Agile practitioner and Scrum Master with extensive management experience.
[click to continue…]
CSSJavaScriptHTMLCSS3HTML5
Hire

The Vital Guide to CSS Interviewing

The Challenge

Cascading Style Sheets, or CSS for short, is a style sheet language used to describe the presentation of a document written in HTML. The first version of CSS was proposed in late 1994. Over the next 20 years, CSS was upgraded 3 times, leaving us with current CSS version 3. Today, CSS is one of the core languages of the web and it is standardized by a W3C specification. Its development was very slow, which resulted with problems in adoption, and in the end web browser developers took things into their own hands. This resulted in many cross-browser compatibility issues and wasted development hours. CSS3 in hand with HTML5 has become an integral part of any front-end development, and there is no shortage of developers with CSS listed on their resumes. This makes locating CSS developers fairly easy, but makes choosing the perfect one that much more of a challenge. Many web developers will say they are also CSS developers, but as with any language or skill, there’s a difference between knowing CSS and being a CSS expert.

CSS3 in hand with HTML5 has become an integral part of any front-end development

CSS3 in hand with HTML5 has become an integral part of any front-end development

That’s why hiring CSS developers can be difficult, and searching for a perfect one could be long and daunting task. It doesn’t have to be like that - the goal of this guide is to help you find the perfect match for your team or project. Toward that goal, this article offers a sampling of questions that are key to evaluating the breadth and depth of a candidate’s mastery of CSS. The following guide gives you some questions for inspiration when preparing an interview for top-notch CSS developers. You should not assess candidates based purely on their ability to “correctly” answer each question. That would be missing the point, because not every top candidate will know all the CSS details, nor does knowing all the details guarantee you the best developer. Instead, use provided questions to see how the candidate thinks about the problem at hand, how they work through provided examples, and how they weigh alternatives and make judgment calls.

Questions and Answers

Q: What is an ‘id’ selector, and what is a ‘class’? Explain their differences.

HTML elements can have either id attribute or class attribute, or even both attributes.

The id selector assigns a unique name to the element it is applied to. For CSS to be valid, there can be only one element with a given name. An id selector is usually used when you want to restrict styling rules to a specific HTML element, or a block of elements. By the CSS specification, id selectors are defined with the # character, followed by the name.

On the other hand, the class attribute assigns a class name to the element, and that name can be used on any number of elements within the document. A class-specific style is used when you want to apply styling rules to more than one of blocks and elements within the document. Similar to id selectors, classes are defined by a period (.) and followed by the class name.

To summarize, an id selector identifies and sets style to only one occurrence of an element, while class can be attached to any number of elements. CSS best practice is to to use classes as much as possible, and to reserve the use of id attributes for specific uses. This will result with smaller style sheet files which are more performant and easier to maintain.

Q: In how many ways can CSS be added to a web page? Discuss advantages and disadvantages of each approach.

There are three ways to include CSS to a web page:

  1. Inline: CSS is applied directly to the HTML elements by use of the style attribute.
  2. Embedded: CSS is added within the head element of the web page by placing the CSS code in a style element.
  3. External style sheets: CSS is placed in an external file and added to a web page by use of a link element.

Inline styles have more disadvantages than advantages. Inline styles are useful for small numbers of style definitions and they have the ability to override other style specifications. The disadvantages are they don’t separate the style from the content, styles can’t be controlled from one place, and it is hard to create more complex styles.

Embedded and external CSS share most of the advantages over the inline styles. It is possible to create classes that will be used by multiple elements in the document, they allow complex styling by using selector and grouping methods, and styling is controlled from only one place.

By using embedded style sheets no extra download is required, while external CSS files offer style control of multiple HTML documents from a single file. Disadvantage of the external CSS file is until the external style sheet file is loaded, the HTML document can not be properly rendered.

Q: Explain what RWD is. Discuss how it can be achieved with CSS.

RWD is an abbreviation for Responsive Web Design, and it is the practice of building web pages to work on any device and every screen size; no matter how large or small they are, be it a mobile phone, tablet, laptop or desktop. Benefit of the RWD is you don’t need to create a different page version for each mentioned device. Responsive web design uses only HTML and CSS to resize, hide, shrink, enlarge, or move the content to make it look best on any given screen. RWD is achieved by using CSS media queries - media queries are simple filters which make the content style change based on the characteristics of the device like the display type, width, height, orientation and even resolution.

Q: Discuss CSS image sprites.

Sprites are essentially multiple raster images merged into a single image. The main reason for their usage is to help with performance. The fewer different requests a browser needs to make, the faster the web page will load. Term “sprites” dates from the old times and was first used in video games. The idea was that it is faster to load one image into graphic memory, and then only display parts of that image at a time, than continually load new images. This same principle is used in web today.

In CSS, image sprites are used with a background-image property, and then adjusted by setting the background position and dimensions of the individual classes to display a single portion of the complete image sprite.

Q: Explain what Less, Sass, and Stylus are. Discuss what they offer, and their advantages and disadvantages.

Less, Sass, and Stylus are all CSS preprocessors. CSS preprocessors are an abstraction layer on top of CSS, written in a special syntax compiled back to CSS.

CSS preprocessor offer powerful features on top of the CSS, with variables, extends, and mixins being the most notable. Variables store information that can be reused later, like colors or other commonly used values. Extends help you create “classes” that allow inheritance for the rules. Mixins, you can think of like “function”. There are some other features in comparison with vanilla CSS, like the use of logic statements (conditionals and loops), custom functions, integration with other libraries like Compas, and many more.

When talking about advantages and disadvantages, personal preferences offer great opportunity to discuss with the candidate their own view on the use of CSS preprocessors and reasons why a specific one could be used. Basically, there is no right or wrong answer why which one could be used. To read more about CSS preprocessors, you can read an article Why You Should Stop Using Vanilla CSS.

Q: Explain what CSS vendor prefixes are.

CSS vendor prefixes are extensions to the CSS standards. They are used by browsers to offer experimental and non-standard features. Since the vendor prefixes are not included in the official CSS specification, by adding specific prefixes browsers are preventing future incompatibilities which could arise when the standard is extended.

The CSS vendor prefixes are:

  • Android: -webkit-
  • Chrome: -webkit-
  • Firefox: -moz-
  • Internet Explorer: -ms-
  • iOS: -webkit-
  • Opera: -o-
  • Safari: -webkit-

Q: Explain the CSS box model and the layout components that it consists of. Provide examples.

The CSS box model is a rectangular layout paradigm for HTML elements that consists of the following:

  • Content - The content of the CSS box, where text and images appear
  • Padding - A transparent area surrounding the content (such as the amount of space between the border and the content)
  • Border - A border surrounding the padding (if any) and content
  • Margin - A transparent area surrounding the border (such as the amount of space between the border and any neighboring elements)

Each of these properties can be specified independently for each side of the element, namely top, bottom, right and left, or they can be combined into multiple sides by specifying fewer parameters. For example:

/* Setting top, right, bottom and left margin */
margin: 50px 10px 100px 25px;

/* Setting the same margin on all four sides: */
margin: 50px;

/* Grouping together top/bottom margin and right/left margin */
padding: 100px 25px;

Test candidates with CSS examples, or give them tasks to create HTML elements using only CSS

You can test candidates by giving them different CSS examples and asking them to explain what they do. This way you can better assess their way of thinking and knowledge about some CSS specifics. Another approach is to give candidates an image of some fancy button or a progress bar, and ask them to recreate them using only CSS. Some CSS examples you can give out to candidates are listed below.

Q: Explain what elements will match each of the following CSS selectors:

1. span, a
2. span a
3. span > a
4. span + a
5. span ~ a

  1. span, a will select all <span> elements and all <a> elements.
  2. span a will select all <a> elements that are anywhere inside a <span> element
  3. span > a will select all <a> elements where the immediate parent is a <span> element
  4. span + a will select all <a> elements that are placed immediately after a <span> element
  5. span ~ a will select all <a> elements that are anywhere preceded by a <span> element

Q: Explain the meaning of each of the following CSS units:

1. cm
2. em
3. in
4. mm
5. pc
6. pt
7. px

  1. cm - centimeters
  2. em - elements, relative to the font-size of the element (e.g., 2 em means 2 times the current font size)
  3. in - inches
  4. mm - millimeters
  5. pc - picas - 1 pc = 12 pt = 1/6th of an inch
  6. pt - points - 1 pt = 1/72nd of an inch
  7. px - pixels - 1 px = 1/96th of an inch

Q: In CSS3, how would you select:

1. Every <a> element whose href attribute value begins with https
2. Every <a> element whose href attribute value ends with .pdf
3. Every <a> element whose href attribute value contains the substring css

  1. Select every <a> element whose href attribute value begins with https: a[href^="https"]
  2. Select every <a> element whose href attribute value ends with .pdf: a[href$=".pdf"]
  3. Select every <a> element whose href attribute value contains the substring css: a[href*="css"]

Conclusion

For a top CSS developer, provided questions might come off as a bit basic. However, they cover most of the core CSS concepts and principles, and they do provide a starting point for evaluating individuals. Being able to discuss CSS principles and concepts in a clear and coherent manner will demonstrate candidate’s communication skills as well as their theoretical and peripheral subject knowledge. Finding true masters of CSS is a challenge. We hope you find the questions presented in this post to be a useful foundation in your quest for the elite few among CSS developers. Finding such candidates is well worth the effort, as they will undoubtedly have a significant positive impact on your team’s productivity and results.

Hire CSS developers now
Alvaro 1506e7

My team is going to personally help you find the best candidate to join your team.

Alvaro Oliveira
VP of Talent Operations