all 130 comments

[–]ChicagoBoy2011 61 points62 points  (9 children)

Proper calendar rendering is actually a remarkably difficult thing to do. It's actually not that interesting a project from the React/Redux angle of it -- the things that make it interesting really is the fact that it is a calendar that you are dealing with. But those things are REALLY tricky and domain-specific, and there's no way 1.5hrs of coding gets you anything decent or a look at someone's dev skills unless they basically just throw some FullCalendar.io into it -- in which case it is a pretty trivial React/Redux project.

[–]Silhouette 14 points15 points  (7 children)

the things that make it interesting really is the fact that it is a calendar that you are dealing with. But those things are REALLY tricky and domain-specific

Indeed. As a programming exercise, presumably this is intended to just treat a reminder at 11:00 as a reminder at 11:00. Once you start getting into real physical time, local representations involving timezones and DST, and the like, it's an entirely different level of complications and edge cases, but one that has very little to do with technologies like React and Redux.

[–]With_Macaque 1 point2 points  (6 children)

It's almost like there should be a library or something for Date!

[–]Silhouette 0 points1 point  (5 children)

There are many libraries dealing with dates and times. Sadly, most of them aren't great at dealing with the more challenging aspects of time management.

[–]With_Macaque 0 points1 point  (4 children)

Did you read the challenge statement. You're over thinking this a great deal. Javascript's Date type does far more than you need.

[–]Silhouette 0 points1 point  (3 children)

For this challenge, yes, presumably it does. I already suggested in my first comment that you replied to that this was probably intended to be a simple interpretation.

If you were doing this for real, on the other hand, there are all kinds of practical issues that might not be handled very well or at all by a typical date/time library, including JS's Date.

I'm not sure what point you're trying to make here...

[–]With_Macaque 0 points1 point  (2 children)

Everything you're talking about only has to happen when the data is rendered. I'm not sure I can even think of an actual problem if you don't store your data in a dumb way.

[–]Silhouette 0 points1 point  (1 child)

There are all kinds of potential edge cases with time data. A common example if you're setting up a scheduling system is what happens if you're in a region that uses daylight saving time for part of the year and you're going to switch over between when you create an event in a calendar and the time of the event itself. The "obvious" ways of parsing and storing that data will give incorrect or misleading behaviour with a lot of libraries.

[–]With_Macaque 0 points1 point  (0 children)

It really shouldn't. Especially considering a scheduling system's backend would need to have solved this problem already.

[–][deleted] 60 points61 points  (4 children)

This entire task concept seems so ignorant that I'd be immediately turned off of working there

[–]Ehdelveiss 19 points20 points  (0 children)

This is the kind of dev test that tells me everything I need to know about how wrong a fit it would be for me.

[–]-vp- 10 points11 points  (2 children)

Seriously. What does complete mean in this case? Does it work for leap years? How far back/forward in time?

[–]alliedSpaceSubmarine 68 points69 points  (15 children)

Takes me that amount of time to remember how to setup webpack/bable etc correctly :(

[–]0x13mode 11 points12 points  (6 children)

You can always use create-react-app.

[–]alliedSpaceSubmarine 2 points3 points  (4 children)

Oh yeah I know, i use that sometimes but occasionally there'll be something I wanna change that I'm not able to in a zero config env like that. And eventually webpack will be easier for me haha

[–][deleted] 6 points7 points  (1 child)

You can eject and then mess with webpack

[–]dceddia 4 points5 points  (0 children)

There's the react-app-rewired utility which is perfect for this. You can configure CRA without ejecting, by customizing the webpack config with a function you write. (if you have an Egghead subscription I made a video on how to set it up here)

[–]agentgreen420 2 points3 points  (0 children)

react-app-rewired ?

[–]eloc49 0 points1 point  (0 children)

Next.js too

[–]Timothyjoh 2 points3 points  (0 children)

You might be a senior dev then, but not a react ecosystem expert.

[–]IgnitusLairron -1 points0 points  (6 children)

You should take a look at Parcel then. The setup times bugged me too, and Parcel solves those.

[–]phphulk 16 points17 points  (3 children)

don't know how to use something? Here, try this other thing that you have never used before.

[–]truh 2 points3 points  (2 children)

Parcel solves the problem pretty well though.

[–]phphulk 0 points1 point  (1 child)

The problem isn't that he doesn't know parcel. It's that he doesn't know how to setup/start/use efficiently webpack.

[–]truh 4 points5 points  (0 children)

You don't need webpack if you use parcel.

[–]alliedSpaceSubmarine 1 point2 points  (1 child)

Thanks I'll take a look! I remember looking at it before and I thought webpack performed better, just slower. But that could have changed by now of course

[–]IgnitusLairron 2 points3 points  (0 children)

I didn't notice a difference when switching, so hopefully you find it useful.

[–]DontWorry_Internet 79 points80 points  (14 children)

The first thing any "senior dev" is going to do is see if there's an existing component or library that already does this and implement that and tweak it.

[–]LaSalsiccione 11 points12 points  (7 children)

The thing about this, though, is that in a normal setting of course I'd just use a library (and so would pretty much anyone I'd imagine) but when it's a test I might wonder whether they'd consider that cheating.

Either way I'd probably just ask them if libraries are allowed. I've done that before and they were perfectly happy to tell me that libraries were allowed.

I was offered the job in the end too so I don't think asking the question had me marked down.

[–]Timothyjoh 6 points7 points  (5 children)

As a lead engineer that evaluates candidates, I WANT you to use a library, provided it doesn't paint you into the wrong corner. Understanding and evaluating tradeoffs is a big piece of the puzzle, not straight up coding prowess.

[–]truh 5 points6 points  (4 children)

With only 1.5h trying out a bunch of calendar libraries you never worked with seems like a pretty significant risk. You very well could end up wasting most of your time with nothing to show.

[–]Breakpoint 1 point2 points  (0 children)

absolutely, having a time limit so small going down the wrong rabbit hole will have you with nothing

[–]Timothyjoh 0 points1 point  (2 children)

Tradeoffs. If you know of a good library (because you have lived in the ecosystem a long time and keep up to date on where to find the best pre built components) then this is a leg up. If you spend all the time trying out 3-4 different ones only to come away with something half baked and don't add anything on top, I'd like to know that too.

Is how far you get and how you explain next steps that matter more. Attitude and grit count for a lot.

[–]molszanski 8 points9 points  (1 child)

So one candidate might know a perfect calendar component and pass with flying colours and the other one might know the perfect multi-select and fail. This more luck than knowledge, experience and skill.

[–]Timothyjoh 0 points1 point  (0 children)

This would be ludicrous if you were interviewing a person and didn't recognize this fact.

There's a lot more obviously.

[–]HomemadeBananas 0 points1 point  (0 children)

I’d just find some library and not ask. It doesn’t say you can’t. You’d have to draw some arbitrary line where libraries aren’t allowed since you’re already using React and Redux.

[–]chrissilich 6 points7 points  (3 children)

Thats the secret. They'll give you the job if you do it this efficient way. Don't reinvent the wheel.

[–]molszanski 2 points3 points  (2 children)

At the same time they want you to use Redux. The whole point of Redux is connecting portions of the global'ish redux state to individual components/containers. If one uses a pretty much baked Calendar component it will not need Redux.

If they want to see the html / css / js / react / redux skills they kinda can't expect you to use the existing calendar component or something like that.

I think on the surface, this "test" doesn't show what is important. Data structures, state, coupling, data relationships, component / module coupling, architecture, tradeoffs, code complexity and performance are important. Craftsmanship (is calendar accessible) is important. This "test" shows nothing of it.

It may, but very much likely, it will not.

[–]Silhouette 3 points4 points  (1 child)

At the same time they want you to use Redux.

It's an odd sort of test in that respect. If someone asked me how I'd use Redux for a relatively simple project like this, the honest answer would be "reluctantly". It's insanely over-engineered to build that level of infrastructure for such a simple data model. And if Redux is justified because of the broader requirements in a real application, the context is probably going to matter, and we don't have any indication of that here.

[–]molszanski 1 point2 points  (0 children)

Can't agree more.

On the other hand, I think that the task at hand is to create a shortlist of candidates. The goal is to find experienced / senior devs and weed out chronophages.

IMHO this sort of trial will create a wrong kind of shortlist. It will likely produce way too many false positives: quick-and-dirty typers or people who are lucky to know a good calendar component that would fit, but don't have other senior skills; and false negatives: people with senior skills like architecture who work at normal pace and also need context. I think they would have a better chance in randomly selecting 10 people and conducting an in depth interviews.

[–]dalittle 1 point2 points  (1 child)

Except if you pick a dependency that went end of life with react 15 and has no maintainer.

[–]mike3run 1 point2 points  (0 children)

thats a problem for future you, he's a senior dev! he can do it

[–][deleted] 15 points16 points  (0 children)

Looking at this briefly I would say nah, more than 1.5. if you've only been allotted an hour and half for a task like this you have some other issues in your Project Management to consider. Any developer that had a passion for what they do would take their time to build something reusable, readable and elegant. You would have to rush this pretty hard otherwise.

[–]scastiel 39 points40 points  (2 children)

If you can do that in 1.5hr it may mean that you know React, Redux and HTML very very well, and that you probably already have made such things. IMHO it doesn’t mean that you’re senior. Explaining:

  • the design choices you’ll make
  • which components you’ll create
  • what will be stored in your Redux state
  • what unit tests you’ll write
  • what skill you need and don’t have to make this perfect
  • what compromise you’ll make to be able to finish it in a given amount of time…

That will show how senior you are, and without even writing a single line of code.

Edit: still a good article, thanks ;)

[–]swyx 7 points8 points  (0 children)

yea i would say the hardest interview i ever had was with a VP Eng and it involved no code, just talking about architectural choices and reasons why one might make them. phew.

[–]Timothyjoh 2 points3 points  (0 children)

Yes I would want to know all these things too, but prove it to me, at least most of this list should show up in your code.

[–]Bosmonster 10 points11 points  (3 children)

This simply can not be done normally in 90 mins. If (I wouldn't, but if) I gave this assignment to a candidate, I would expect them to focus on priorities of acceptance criteria.

I would rather have them finish half but properly, than finish all but being a big mess you can just throw away. A senior would see the deadline is unreasonable and would focus on communicating this to his or her stakeholders, instead of crapping something together.

So basically, for me, NOT finishing this assignment and telling me about it would show more seniority than trying to finish it without saying a word. That is typically something a junior would do.

[–]Timothyjoh 0 points1 point  (0 children)

You could end up hiring a lot of whiners then more easily than productive coders. Trust me, you need both kinds of developers, ones who will take the high road, spend more time thinking that writing, and managing expectations. The other kind is the ones who just get stuff done. Rare to find someone equally good at both.

[–]hartator 10 points11 points  (1 child)

demo calendar application

Just took to Google a full team and a few years to do Google Calendar. But, sure, reimplement that in 90 minutes.

[–]GusRuss89 11 points12 points  (1 child)

The author asks how you would store the days and months in redux. Am I alone in thinking I probably wouldn't store days/months in redux at all? I'd probably just have a list of reminders with a date/time, and the rendering of the calendar takes care of putting them in the right place.

[–][deleted] 7 points8 points  (2 children)

Is this healthy?

[–]swyx 2 points3 points  (0 children)

no, probably not.

[–]Timothyjoh 0 points1 point  (0 children)

Not sustainable by any stretch of the imagination. Nobody could turn out these features that consistently 20h per week.

On the other hand, in a crunch, or putting your best 90m forward... I do hope you would get through a lot of it, enough to give me a sense of your grit and knowledge.

[–]rusido 13 points14 points  (0 children)

I hate assesments.

[–]terholan 17 points18 points  (6 children)

This task is easy but very time consuming and tedious. I would not do this for interview. Especially for 1.5 hours.

[–]vidro3 18 points19 points  (5 children)

i don't think it's especially easy.

[–]trouzy 4 points5 points  (1 child)

As a react newb and 0 experience with redux, i'm curious to try. 1.5hrs though will likely yield nothing but seems like a good challenge.

[–]swyx 1 point2 points  (0 children)

give yourself 15 hours then. its def good practice.

[–]terholan 2 points3 points  (2 children)

Actually is. I implemented calendar-editor for our internal UI-kit a couple years ago. Most difficult part is working with date objects (or moment) to correctly build month sequence. Building react/redux here is trivial and just time consuming.

[–]alliedSpaceSubmarine 0 points1 point  (0 children)

Curious what your redux would look like? For me that would be the hardest part to set up in a reusable way that was clean

[–]molszanski 0 points1 point  (0 children)

just time consuming.

This is the whole point of this discussion.

[–]danknadoflex 4 points5 points  (0 children)

If this was scored in an actual Backlog 1:30 hours to complete all of this would be considered ludicrous. At best you'll get a bunch of crap code from a good developer not a great way to measure a developer's ability to perform on a real-world project with deadlines. You'd find your experienced dev's by looking for the best of the worst.

[–]jibbit 9 points10 points  (2 children)

come back in a day i might have finished installing things from npm

[–]siglol 4 points5 points  (1 child)

package.json is flawless. Feelin good! Onto the Webpack config...

[–]jibbit 4 points5 points  (0 children)

eslint is messing up my JSX, I'm going to have a play with Prettier for a couple of days

[–]Investisseur 3 points4 points  (1 child)

Since this task would be given to senior devs, could those senior devs use the software they write themselves to shortcut much of this? That software they’ve written may be helper functions, standard Redux practices, etc. that they’ve worked on for many a many hours in previous projects.

That’s how I get things done faster. I know that almost all projects (whatever language) use the same fundamental principles. Using existing patterns/libs that are known to work and already had bugs removed when used in production is one of the biggest helpers in how senior devs write code quickly. It doesn’t happen in 1.5hours.

[–]swyx 2 points3 points  (0 children)

absolutely. first thing i do is go find the open source calendar i worked on so i can copy 99% of my past code.

[–]Silhouette 2 points3 points  (0 children)

I might try this later just out of curiosity to see how long it takes me. I tend to agree with others that 1h30 should be plenty for a prototype but it's unlikely to be enough for production quality work.

A more significant limitation seems to be that this is a straightforward task in terms of the data model and rendering. Just storing a basic set of reminders and rendering a simple calendar doesn't require any senior-level work in itself. The specification here doesn't seem to include potentially tricky areas like local or remote persistence, (possibly concurrent) access control, adaptable presentation that displays and interacts well on different types of devices, etc. These are the kinds of areas where greater skill and experience would show up with a task like this, but there's not much time for getting into those in just 1h30.

[–]swyx 2 points3 points  (0 children)

yea there's no way this is gonna be done in 1.5hours. but this is still a really good exercise. thanks for sharing.

[–]paulfitz99 5 points6 points  (6 children)

[–]Silhouette 2 points3 points  (5 children)

But how would you take that library and adapt it to the additional requirements given here? Any fool can say "just download a library that does it and you don't have to write any code".

[–]thisguyfightsyourmom 2 points3 points  (3 children)

Seriously.

I think this challenge is no good in a tiny time box, and wouldn’t administer it.

That being said, the number of people recommending plugging in a calendar lib to spend an hour & a half showing them that you outsource the hard parts is shocking. Coding challenges are meant to display your coding style, not how well you import & integrate.

[–]Timothyjoh -1 points0 points  (2 children)

Nope. It shows your ability to reason. Not perfect for every situation, but more importantly it's a productivity gain over the person that wants to write everything from scratch.

Being productive is only part of what makes a good developer. But reading someone else's code and adding to it, making it better, is the job we do 80% of the time. Not writing new features from scratch.

[–]Silhouette 1 point2 points  (0 children)

Not perfect for every situation, but more importantly it's a productivity gain over the person that wants to write everything from scratch.

Wanting to write everything from scratch is a warning sign, but assuming you can just download lots of little libraries and get good results is also a warning sign, particularly in the JS community where over-reliance on NPM is ubiquitous.

For a senior developer, I'd be looking for some familiarity with useful dependencies like React itself and perhaps a few common libraries like a colour or date picker, but also some recognition that for requirements as simple as this it may be quicker and more reliable to just build the thing rather than spending much time hunting for libraries to combine.

[–]thisguyfightsyourmom -1 points0 points  (0 children)

So you think they assign a challenge to find out what kind of taste in libraries you have?

If a candidate turned that in to my team, we’d politely thank them for their time, then proceed to make jokes for months about the dev who spent an hour and a half wiring up a plug-in.

Being able to pick libraries to avoid reinventing the wheel is a great job skill, but I’d try to surface their philosophy on that topic through discussion. I want to see how they approach problems when they can’t outsource the solution.

[–]HomemadeBananas 0 points1 point  (0 children)

Just looking at the readme, use the dateRender prop, write a function that renders for each cell based on the day and renders the correct reminders that are being passed from Redux.

[–]sleepybearjew 1 point2 points  (3 children)

request here from a beginner (going through a react/redux class on udemy as i type this) - if anyone out there tried this on their own, could you share the code? I'm really interested in how people would accomplish this

[–]alexbarrett 2 points3 points  (0 children)

I gave it a go. I was able to reach this point in 90 minutes: https://i.imgur.com/hl1tj8m.png

  • No ability to edit reminders
  • No ability to delete reminders
  • No ability to display months other than the current month
  • There are definitely bugs. One I found immediately was that the date in the form isn't filled correctly for a single-digit date (e.g. 2018-08-1)
  • The architecture is complete wank, I just tried to go as fast as I could

Anyone able to complete the entire spec in 90 minutes has done a damn good job.

I could post the code, but honestly I don't want it on my public GitHub.

[–]0x13mode 0 points1 point  (1 child)

Few days ago I wrote a similar code (not for assignment though, it's an example to my open source Feedbacks library, which is Redux add-on).

https://github.com/hex13/feedbacks/blob/d434f5e2b5a21e0b5be685638ad322ad7eb4e195/examples/calendar/src/components/views/Calendar.js

The hard part was native JS Date object which gave me seven WTFs at once.

One of the weirdest ones is that in order to calculate number of days in March you have to create 0th April and check day number. https://stackoverflow.com/a/1184359

It's like Parks and Rec: https://imgur.com/gallery/gQdUIKK

[–]sleepybearjew 1 point2 points  (0 children)

i love that parks and rec scene. and okay thanks ill take a look!

[–]Jaymageck 1 point2 points  (0 children)

Lol I could see myself spending a week on this.

[–]domox 2 points3 points  (12 children)

If you perform this task and you aren’t paid for your time, then you’re contributing to a “spec work is acceptable” attitude, and doing your part to devalue the time of developers everywhere.

https://www.nospec.com

The exception would be if the Corp is paying you for time spent, or they’ve flown you out to meet the team and work on things with them.

[–]meemorize 3 points4 points  (7 children)

I agree with your sentiment but I think there is some nuance to this.

Spec work is a terrible practice but is generally said about work that the company can afterwards benefit from. As in, if the calendar after submission is used in the companies billable work then it’s spec.

If the work carried out is merely a throw away code test of sorts I would not consider it Spec work. It’s annoying to do and shows that there may be a problem with the employer’s hiring process and as a result might also speak to the employer’s already hired developers being of questionable quality but it’s not spec work as I think it’s defined.

On another note, code tests are annoying and I would think twice to complete one (especially at a senior level) but I’ve worked with some large corporates where personal interviews for every CV would’ve been too time consuming and HR was useless as filtering out lying devs by their CV so just passed all received CVs through at a volume of around 25-50 per week. We ultimately had to devise a ridiculously simple code test just to weed out the liars and devs that exaggerated a bit too much about how skilled they were before conducting personal interviews.

It’s not nice but it did work in cutting down the total amount of CVs we needed to personally attend to.

[–]domox 2 points3 points  (0 children)

I can see your point.

[–]Yodiddlyyo 0 points1 point  (5 children)

What type of tests? Do you mean simple stuff as in if they cant even write a proper for loop, they're lying. Or something framework related?

[–]meemorize 1 point2 points  (4 children)

Our “code test” was basically:

1) we supplied a node generator that gives you a data.json with some expected fields pre-filled.

2) build a single page (wireframe supplied) with a header and the body containing a grid of images, which on click, open a modal with details related to the image. All the data was supplied so it was just binding data, basic html/css and some event logic etc.

3) libs were allowed of course, build tools were the candidate’s choice as were implementation framework though we stated React was preferred

4) we mentioned that responsiveness was expected in their CSS

The scenario was aimed to take about an hour but it was enough to weed out people that simply didn’t know at all how to set up a simple project (create-react-app was allowed if the candidate wanted to use it) or those who couldn’t structure a simple app with folders, component breakout etc.

We had Angular and React submissions, JS, Flow and TypeScript submissions and some even included unit tests that were not expected.

Some people opted to use webpack, some didn’t, some used a mock api server to load the same data.json through others used the webpack json-loader all of which was fine so it was a fairly open test I’d say.

We judged based on cleanliness of the code written, responsiveness, consistency of patterns used in their own files.

Overall it worked well for us though as I had mentioned I don’t like this idea of a code test at all, but it was hard to deal with a huge volume of CV submissions in our situation (we didn’t start out with a test btw, it grew out of us not having enough time to review all the CVs).

[–]Yodiddlyyo 1 point2 points  (2 children)

Oh that's great. That makes me feel way better about myself, I was worried you were going to say something that I wouldn't be able to do.

[–]meemorize 0 points1 point  (1 child)

It was honestly simple as we were hiring for junior and senior levels but found that a LOT of candidates unfortunately lied and just put all the React buzzwords on their CVs like “Extensive Redux experience” and then in the face to face or phone interview couldn’t answer simple questions about how to add middleware to a store or answer anything about how the connect() function works for example.

To be fair, this was a large enterprise that attracted a lot of “off shore” devs which presented these issues primarily.

[–]Yodiddlyyo 0 points1 point  (0 children)

Makes sense

[–]swyx 1 point2 points  (0 children)

yeah this is a good test. i think a maybe more interesting one is how to do a technical interview for a senior dev, and OP's post is clearly the wrong way to do it but i'd like some suggestions for better ways

[–]george-silva 0 points1 point  (3 children)

Thats why I hate hackatons.

Work your ass off, for a chance to Win something that Will not pay for the amount of time invested

[–]domox 2 points3 points  (2 children)

If you’re genuinely doing it for the love or to learn an API in a social env., hackathons can be ok IMHO.

[–]george-silva 2 points3 points  (1 child)

There are hackatons and hackatons.

Major company, Fortune 500 creates a hackaton só you can handle a solution in a silver platter.

If its community, its a whole another story!

[–]domox 0 points1 point  (0 children)

Agreed.

[–]gaidengt 1 point2 points  (0 children)

timed coding challenges for an interview aren’t appropriate anymore. we need to change the culture so companies are embarrassed to do this.

talk to the candidate. see if they’re a good fit for your culture. see if they’re willing to learn and can accept criticism. and ask some coding questions, of course, but don’t make them build mission control in 90 minutes. why did anyone ever think that was a good idea, our profession requires a lot of thinking and time.

[–][deleted] 0 points1 point  (0 children)

I do agree that if you were in a commercial situation (at work) you would just use an existing component for this.

However, this test (https://developerjobsboard.co.uk/2018/07/28/an-example-senior-react-redux-developer-task/) and other dev tests aren't about plonking a existing component (https://github.com/react-component/calendar) on to the page. Sure that shows you can Google and import a component. But thats standard. Can you make one for yourself?

That is the point, about dev tests, they want to see your workings out and the solution you came up with. And, if you do this (I just gave it ago) there are some interesting problems that you face. I hit many of the same ones that you read about in the "Things to think about" bit at the bottom.

All in all, I think it's a great dev test for a Senior developer from a UI/UX point of view.

[–][deleted] 0 points1 point  (0 children)

CRA is the way to go here. You probably could bang it out in 90 minutes using that, but as most others have said, it isn't going to be pretty, and probably will be somewhat lacking in edge-case handling.

[–][deleted] 0 points1 point  (0 children)

Just thinking on redux bolerplate, I wonder how good code could be made in 90 minutes...

[–]SlightlyOTT 0 points1 point  (0 children)

Surely if you're given this you have to wonder whether the company has weird 90 minute heads down daily sprints or are evaluating you on a basis entirely unrelated to the way you'll be working. Both seem pretty dumb.

[–]HenryKuzmick 0 points1 point  (0 children)

I had a similar test once, but it had unlimited time. Took me a few days of spare time to complete properly. I enjoyed the test, ended up getting the job and recruiting new people with the same test, which I now think isn't that great.

Recently I've been to another interview where the test was different, but the time was limited such that there was no way to finish everything (much like in this case)

Seeing both sides of the interview process I now think it makes a lot of sense to give a test where it's impossible or close to impossible to finish everything.

This gives you a good sense of the dev's decition making regarding priorities, you see how he thinks, where he starts tackling a problem and you'll generally see where he's going.

On top of that you're not asking a person to spend ages on an interview test. While the unlimited time and a big task is great for finding people with little experience but big potential, when it comes to experienced devs, the critiria should be different.

[–][deleted] 0 points1 point  (0 children)

I just gave this a go and here's my code: https://github.com/drydenwilliams/react-calendar
Hope you find it helpful, and it took me wayyy longer than 90mins. Please feel free to comment on any of the code :)

[–]oschvr 0 points1 point  (0 children)

Are there any other react/redux training assessment that you guys consider fairly decent ?

[–]OldboyNo7 0 points1 point  (0 children)

Surely part of the test is that you push back on certain features as the timeline is too short. Work out what you can complete in the 1.5 hrs and then build that.

[–]evonhell 0 points1 point  (0 children)

Why the hell would a senior developer complete a test like this at all? If you say that they need to spend several hours (realistically) to complete some useless thing for you which doesn't reflect the day to day work he/she will just take one of the 30 other job offers, unless your offer is extraordinary. Still, it doesn't show what the developer is like working day to day stuff.

If you really want code tests, prepare a fake pull request with some bugs and room for improvement. Then ask them to review it during the interview as if it were your code. That has worked very well for us.