Giter Club home page Giter Club logo

back-end-developer-interview-questions-1's Introduction

Back-End Developer Interview Questions

A list of helpful back-end related questions you can use to interview potential candidates. Inspired by the git-repo: https://github.com/darcyclarke/Front-end-Developer-Interview-Questions.git and Paul Irish (@paul_irish)

@Version 1.0.1

This repo contains a number of back-end interview questions that can be used when vetting potential candidates. It is by no means recommended to use every single question here on the same candidate (that would take hours). Choosing a few items from this list should help you vet the intended skills you require.

Note: Keep in mind that many of these questions are open ended and could lead to interesting discussions that tell you more about the person's capabilities than a straight answer would.

[⬆] return to Table of Contents

  1. What did you learn yesterday/this week?
  2. What excites or interests you about coding?
  3. What version control systems have you used (Git, SVN etc.)?
  4. What is your preferred development environment? (OS, Editor, Browsers, Tools etc.)
  5. How do you go about testing your PHP?
  6. Have you ever looked at the source code of the libraries/frameworks you use?
  7. How do you organize your code?
  8. When do you optimize your code?
  9. If you could master one technology this year what would it be?
  10. Explain the importance of standards and standards bodies.
  11. Explain MVC, HMVC, the differences, goals and cons.
  12. What did you learn/know about agile methodology?
  13. Do you prefer to work on a team or alone?
  14. What's the biggest problem faced on your projects and how did you solve it?
  15. How you contribute to the open source community (Github, Bitbucket, IRC, forums)?
  16. What do you think about algorithms? An algorithm which you like. Discuss.

[⬆] return to Table of Contents

  • MVC
    • Question: In the MVC design pattern what's M stands for? Answer: M stands for Model, it is the data and data-management of the application.
  • MVVM
  • Repository
  • Dependency Injection
  • Visitor
    • The classes and/or objects participating in this pattern are? Answer: Visitor, ConcreteVisitor, Element, ConcreteElement, ObjectStructure

[⬆] return to Table of Contents

floor(3.14)

Question: What value is returned from the above statement? Answer: 3

echo join("", array_reverse(str_split("i'm a lasagna hog")));

Question: What value is returned from the above statement? Answer: "goh angasal a m'i"

$array = array();

array_push($array, 1);
array_push($array, 2);

Question: What is the value of count($array)? Answer: 2

$foo = "Hello";

function alert_a() {
	global $foo;

	$bar = " World";

	echo ($foo . $bar);
}

function alert_b() {
	$bar = " World";

	echo ($foo . $bar);
}

alert_a();
alert_b();

Question: What is the outcome of the two alerts above? Answer: alert_a() = Hello World, alert_b() = E_NOTICE : type 8 -- Undefined variable: foo -- at line 15 World

[⬆] return to Table of Contents

###PHP Specific Questions

  • Describe two good uses - and practices - for callback usage.

[⬆] return to Table of Contents

  • General SQL
    • What is the difference between a View and a Table?
    • What does the HAVING clause do?
    • How do you choose a column to be indexed?
  • Do you know MySQL?
    • How would you backup and restore data using mysqldump from the command line?
    • When should you use SQL_CACHE and S_NO_CACHE on your queries?
    • Question: describe five functions that disable cache on queries and describe why. Answer: BENCHMARK(), CONNECTION_ID(), CONVERT_TZ(), CURDATE(), CURRENT_DATE(), CURRENT_TIME(), CURRENT_TIMESTAMP(), CURTIME(), DATABASE(), ENCRYPT(), with one parameter FOUND_ROWS(), GET_LOCK(), LAST_INSERT_ID(), LOAD_FILE(), MASTER_POS_WAIT(), NOW(), RAND(), RELEASE_LOCK(), SLEEP(), SYSDATE(), UNIX_TIMESTAMP(), USER(), UUID(), UUID_SHORT()
    • Have you tinkered with MySQL server optimization, and if so, what did you do to alleviate what problems?
  • Do you know PostgreSQL?
  • SQL Server
    • How would you migrate from SQL Server to PostgreSQL or MySQL?
  • Do you know How to 'hack', build a cluster, improve performance, implement cache, pooling or compile those services from source?
  • Are you familiar with NoSQL databases?

[⬆] return to Table of Contents

  • What happens between the time you enter a URL in your browser until you see the page that you requested?
  • How does the 3-way TCP handshake occur when you request a page from a server?
  • What are the contents of an HTTP request header? Response header?
  • What is the difference between HTTP and HTTPS?
  • How would you design a URL shortener similar to bit.ly?

[⬆] return to Table of Contents

[⬆] return to Table of Contents

  • Have you created or managed some web service?
  • What web service protocols do you know?

Question: Describe server response code 200. Answer: ("OK") Everything went ok. The entity-body, if any, is a representation of some resource.

Question: Describe server response code 201. Answer: ("Created") A new resource was created at the client's request. The location header should contain a URI to the new resource and the entity-body should contain a representation of the newly created resource.

Question: Describe server response code 204. Answer: ("No Content") The server declined to send back any status message or representation

Question: Describe server response code 301. Answer: ("Moved Permanently") Client triggered an action on the server that caused the URI of a resource to change.

Question: Describe server response code 400. Answer: ("Bad Request") A problem occurred on the client side. The entity-body, if any, is a error message.

Question: Describe server response code 401. Answer: ("Unauthorized") The client failed to provide proper authentication for the requested resource.

Question: Describe server response code 404. Answer: ("Not Found") Client requested a URI that doesn't map to any resource.

Question: Describe server response code 409. Answer: ("Conflict") Client attempted to put the servers resource into a impossible or inconsistent state.

Question: Describe server response code 500 Answer: ("Internal Server Error") A problem occurred on the server side. The entity-body, if any, is a error message.

[⬆] return to Table of Contents

  • Linux/Unix/MacOS
    • Do you know how to use MacPorts, Aptitude, YUM, RPM and other package managers?
    • How often do you update running services?
    • How would you install, configure and handle services such nginx, apache, squid, samba, etc..?
    • What do you know about kernel tuning?
    • What do you know about virtualization?
    • What is the difference between threads and processes?
  • Microsoft
    • How to remove Windows?
    • How would you install Linux using USB or liveCDs?
    • How would you disable Secure Boot and install Linux?
    • How would you migrate from windows to Linux?

[⬆] return to Table of Contents

  • What are the 7 layers of the OSI model?
  • What are some advantages of CDNs? Disadvantages?
  • What is a reverse proxy?
  • What ports do the following use?
    • HTTP
    • HTTPS
    • SSH

[⬆] return to Table of Contents

back-end-developer-interview-questions-1's People

Contributors

anandpandey avatar devsusu avatar evanpurkhiser avatar jaeseung172 avatar jeroenvisser101 avatar jmurowaniecki avatar lluisi avatar phillprice avatar seangallen avatar sebutbult avatar tvandame avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.