kenkam
Joined 16 years ago
Joined 16 years ago
If OP doesn't want to do a test, then he will just end up as one of the ones that didn't make it through the funnel. This then boils down to whether there are companies out there that will take him on his project's merit or whether OP is desperate for a job.
A couple points I disagree with:
* "My main gripe with coding tests is that they ask me for an investment of my time and resources so that they can gather information about me, but I'm getting nothing back." -- you can potentially progress to the next interview stage, you will refresh your memory on coding tests, etc. There is still something to be gained.
* "I've already expressed interest in their position." -- there is minimal effort required to apply for a job. As an interview we get swamped by CVs that all look equally similar - we often need something to distinguish between these CVs. We have seen a wide range of coding test submissions and from this you can glean how interested the candidate is.
Finally, while the OP's suggestions are sensible, they are not always practical for companies, especially when it scales. We can't afford to be distracted by bringing a candidate into the office and work with us especially if we have multiple candidates. Even if the company decided to bring someone in, and assuming the candidate is capable, it will take them the better of a day to get up to speed and running -- setting up the dev env, getting the source, building it, making sense of the application, making sense of the feature/bugfix, making sense of the coding style, etc. They won't be effective enough to actually check in working code.
https://en.wikipedia.org/wiki/Hideo_Kojima#Works
He has produced more games than I have written pet programs.
What they are looking for is probably a subset of good startups, ie. your startup can be good but it's not what they are looking for.
To some extent it must be a statistics game for them. The investment they make flying founders out must have a good return for them in terms of potential investments. Since they have been doing it for a while now the numbers must be close to optimal.
I interpreted it as the latter... although I live in England and when people mention senior I think of people who has experience.
* Don't judge others
Maybe a FB killer is an app made for parents that persuades them to encourage their kids to use FB?
It's not just 3 lines is what I'm trying to say.
* Tech fit -- how does this technology solve the business problem? Have you considered how the overall architecture will look like? You might end up splitting them up to several different components each potentially valid to be written in different languages, depending on their nature. Given that, what do you need to achieve? Perhaps a Rails app is fit for purpose if you're writing a proof of concept. Or you might opt for a language that has established libraries for exposing a RESTful interface and write an SPA on top of that. My point is that it really depends on the business problem and how that is tackled.
* Ecosystem -- are there libraries out there that help you do what you need it to do? Will you have to roll your own?
* How will it be maintained? If you're not working for yourself, then you can assume your code will be maintained by someone else. Is the technology chosen accessible for your intended audience? Like you said, if it is a xyz shop, then it might make sense to write it in xyz. If it's a polyglot shop, then perhaps this is less of a consideration.
* What are the development tooling like? IMO this is quite important for my sanity because I dislike using clunky tools.
* How will the code be pushed out to production. Are there established best practices for pushing the code you're written in xys language into production?
* How easy is it to write tests for the language?
Something to also consider is whether it is good for the future. There is an element of YAGNI here, but it's worth considering the longevity of your technical choices and how easy it will be to upgrade.