Git Product home page Git Product logo

fizzbuzz-js-101's Introduction

LeanKit Fizzbuzz 101 - Javascript Edition

Wut?

This repo serves as the starting point for developers to complete and submit a simple project in order to be considered a candidate for employment at LeanKit. It is designed to allow our teams to evenly evaluate the technical capabilities of developers in the following ways:

  • Repeatable: Every candidate starts from the same point and is tasked with performing the same tasks.
  • Relevant: The aspects of the project utilize the same types of technology and patterns you'll see in our applications.
  • Complete: While the project is simple, it does allow one to complete a small number of tasks in a reasonable time frame while using common technologies in a way that is not completely arbritrary.

This project uses the self-contained version of Jasmine and should be wired up enough to allow you to get going without a lot of effort. If you run in to problems, try and solve them. If you get stuck or think there is a flaw in the setup or docs, submit an issue.

What am I supposed to do?

Fork this repo into your own GitHub account. If you don't have one, you should get one. They're free, and all the other kids are doing it.

Note: If you fork this repo it will be associated with your GitHub username and people will be able to see that. People like your current employer, for example. We're not trying to scare anybody off, and we expect that people may want to perform the tasks outlined for no other reason that funsies. If privacy is a concern, and you're interested in submitting your work for consideration of employment, feel free to download the repo as a zip, complete the steps, and send it to us.

  1. Look at the specifications defined in the fizzbuzz.spec.js file in the spec directory. You're on the hook to provide working, testable versions of the four specifications listed by writing code in the fizzbuzz.js file in the src directory.
  2. You'll notice that the first specification has been completed for you and is working as expected, according to the spec defined. Open the SpecRunner.html file located in the project root to verify. Click the "Spec List" link to view the, well, "List of Specs". The spec titled should return "fizz" when the function argument is divisible by three should show as passing and be green.
  3. Did you see the second spec titled should return "buzz" when the function argument is divisible by five? It's red because it's broken. Fix that test and rerun SpecRunner.html to verify.
  4. Specs #3 and #4 have been defined for you and describe desired functionality out of the system. Implement those specifications based on your understanding of the requirements described, and get them passing. Make sure to follow Red/Green/Refactor.
  5. Look at the index.html file located in the project root. Javascript references have been added for you to both jQuery 2.1.3 from Google's CDN and index.js located in the src directory.
  6. index.js has a predefined $(document).ready( function() {}); for you. Write code in this function to display the responses returned from the fizzbuzz function for all integers from 1 to 100 (inclusive) on the index.html page when it loads.
  7. When you're done, submit a pull request back to this repo from your fork. We'll check out the code and get back to you.
  8. If you make it past step #8, then you'll either come to the office or we'll get together online to do an initial code review of your submitted pull request. After that you'll be asked to implement another feature or two live and interactively. Don't worry, they're not designed to trick you or make you feel uncomfortable. You'll be able to use whatever resources are available and appropriate. We just want to see you write code live in front of our eyeballs, and to get a chance to chat while you're doing it.

Interested? SHOW US TEH CODEZ!

fizzbuzz-js-101's People

Contributors

chrisgundersen 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.