10 questions to make on a tech interview

In a job interview the employer aims to get to know the candidate and assess his fit for the position. Your goal would be to show that you're the person that they're looking for, by getting key insights about the company, and exposing how your abilities and strengths play into them. Here are 10 questions to guide you on the process, focused on tech companies, and specially startups.


1. What is the company's tech stack? APIs, databases, programming languages, frameworks, servers, third party services like Intercom or New Relic. You can use this question to expand on your working experience by talking about similar stacks you've worked it in other companies or personal projects.

2. What is your team structure, and where will I fit on it? This question will let the interviewer introduce who you will be working with, and also give you a glimpse on your day to day work interactions. It will also help them envision you as part of the company.

3. What is the normal course that a feature goes through? Here you'll want to know about their design process, implementation flow, whether they do testing and/or QA, which environments do they have (canary, staging, etc). You can also delve on Joel Spolsky's 12 questions for this one.

4. What is your biggest current issue, and how can I help on improving it? This will help the interviewer see how your skills fit to help the company, and encourage them to envision you working at the position. 


5. What's the company history? How did it started, information about the founders, and the development progress, like prototypes, redesigns, or previous pivots.

6. What's the company roadmap? It's important to know where the company is heading, what are the new features coming in the pipeline, what are the plans for growing the team, whether it is expanding to new markets, etc.

7. What's your customer? B2C, B2B, user growth numbers (or at least trends), ARPU… this could give you a hint of the company's revenue, and ties well with the next question

8. What's the company's investment status? It's very different to work in a bootstrapped company focused on "sensible" growth, than in one with a recent investment round, whose stakeholders are looking for results in the near or middle term. Be sure to get some information about runaway and stocks, if possible.

Closing/next steps:

9. What have you enjoyed most about working here? This question lets the interviewer connect with you on a more personal level, sharing their feelings about working with the company. Their answer will give you unique insights into the job satisfaction and working environment of the company

10. What is the next step? Finally, close with this essential last question, which shows your interest for the position, and opens the conversation one step forward to your hiring.

Of course, you don't have to ask all these questions, as surely some of them will be answered throughout the course of the interview. Remember to thank the interviewer, and express your liking of the company and satisfaction with the talk. You can also follow up with a thank you note via email, to give them an easy way to contact you and continue with the process.

Any questions I've missed? Comments about your experiences in interviews while following this guide, or a similar one? I'll be glad to hear from you on the comments section, or Twitter.

SecurePaymentz Enterprise Banking software (sponsored)

Secure Paymentz is a company that installs Banking Software for banks, loan companies and/or exchangers, who want to have the best technology for their clients.
How does the installation work?
First, what you need to do is get in contact with them via chat on their website https://securepaymentz.us. Once the installation is complete, you then have two options:

Ignore a file globally in git

Set up a global .gitignore:
git config --global core.excludesfile ~/.gitignore_global
Put the file name in the global gitignore file:
echo ".DS_Store" >> ~/.gitignore_global

11 Google Chrome Extensions

Continuing the post about my Mac OS X setup, here are the Chrome extensions I currently use. As you might notice, there's a heavy focus in web development, since that's what I do on my day job; and in keyboard-driven interfaces, which you can read more about here. Off we go!

General Tools

  • Authy: 2-Factor Authentication with support for countless apps. I use it for my Google, Amazon, and Heroku accounts, for starters.
  • Crystal: "Communicate with anyone, based on personality". Try it out, it's uncanny.
  • Google Translate: For the pages that Chrome doesn't recognize as translatable. Offers One-click full page translations, or single word lookup in hundreds of languages.

Setting up Atom for Web Development

In the vein of these Sublime Text 3 recommendations for Rails development, here's my Atom setup for developing web apps.

After using Sublime and Vim for several years, I switched to Atom a year ago, and have not missed one feature from the other two so far. Since Atom is in continuous development by the core team and the community, it only gets better as time passes. Also, it's free.

First, an FAQ/C:


No need to install any package manager for Atom. The editor is composed of over 50 open-source packages, and so the package manager is built in. There's a phenomenal package repository online, or you can search for them directly on Atom's Settings -> Install. And, since Atom is open source and built using web technologies, creating new packages or extending exiting ones is easy. Here are the ones I use:

Export a list from Wunderlist

No amount of googling has provided me with a way to export a list from Wunderlist. The closest I've found form an official answer is "this is something we hope to add with a future update". Here's my unofficial solution:
  • Navigate to the list you want to export:
  • Open the Chrome console: Ctrl + Shift + J / Cmd + Opt + J
  • Load jQuery by pasting the following:
    var jq = document.createElement('script');
    jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js";
  • Paste this to print out your list on the console
  • $('.taskItem-titleWrapper-title').map(function(){ return $(this).text();})
  • Grab your shiny new list from the console in a convenient format :D

If you've found a better solution, do share!


Just a test post to see how many upvotes this gets on Hacker News for having .js on the title.

Here's the latests popular posts on HN with .js on the title:

Here are the ones without:

If you want to be a good web developer, no clue what you need to learn nowadays. However, if you want to be a cool kid, write some JS.

I got a Game Boy!

Remember how I wanted to get a Game Boy a couple weeks ago? Well here it is!
  • Game boy Advance SP: 15€
  • Metroid II: 15€
Also, I just found a way to change the color of original Game Boy games on the Game Boy advance: input one of the following combinations when the Game Boy logo appears:

This way I can play Metroid II in black and white, for maximum nostalgia :)