Checklist for an engineering interview process

Usually the job interviews are seen as a process where a company is choosing a person to hire. Candidates sometimes don’t take the chance also to interview the company and try to gather as much information as possible to see if it would be a nice place to work. I have my own list of things I would like to know from a company. Some to ask during the process, others you can find them by doing some small research. I share them here, in case they help someone.

The idea of this list is not to ask all of them as questions. It is more of a checklist of things it is important to know of how companies work. Also many of them should be answered during a conversation, which is the way an interview should be.

During the years I have been on both sides of the process. It is a summary of my learnings, and also from comments I got from some nice colleagues. It is important to be prepared, have your thoughts together. Do some basic research on companies before going to the interview. Scanning their public image, repos, etc.

I have divided them in sections, because it helps me also when talking to different people that have different roles in companies.

Company and Business

  • What’s the business model? Important if a startup
  • Sustainable business or in need of funding.
  • If funding is needed:
    • Runway
    • Important dates ahead (project deadlines, financing rounds…)
  • Company values
  • If a startup: growing strategy. Sustainable business, exit, IPO…

In some companies, when in an interview process you get the chance to talk to the CEO or some other top management. It is a good chance to see their vision, if they don’t have public values to know them and how the top management sees the company culture.

Also it is important to know which kind of company you are getting into. Fast crazy growth, slowly sustainable. If the money will run out soon, or not. It is important to know what you are getting into.

Team and way of working

  • Size of the team
  • Way of working
    • Iterations, sprints… How long they are?
    • How is the planning of the tasks done?
    • How is product management involved?
    • How new features are designed/implemented?
    • Tech decision
    • Architecture
    • Code reviews, acceptance, etc.
  • Who owns the production services?
  • 247 who does it? How? Is it paid?
  • Daily communication tools?
  • Remote friendly? All people remote, only some?
  • How flexible are with time?
  • Design. Is it part of engineering? How is the interaction?

Most of these can be covered during one of the tech interviews, I like when interviews are a friendly conversation, I keep the list close by to peak in case I am forgetting something so I can bring it in to the conversation.

Technology

  • What is the stack? Tools, languages, cloud, dbs, monitoring, logging.
  • Source control. Process to check in code?
  • Testing? How? How fast? Loopback?
  • CI/CD.
    • How easy is to deploy?
    • How often is it done?
    • Who does them?
    • How are they monitored?
  • Feedback loop. If apps/web apps. Any tools used?
  • Dev environment. How long does it take to have it running locally?
  • Security:
    • PII, how is it treated?
    • Any secure code practices?

Again here many if not most can be covered during the normal chat. Also a team might not have the most advance CI/CD, the deployments might not be automated… That’s ok. You don’t need everything from the beginning. But at least for me it is important to understand the software culture and the direction the team is aiming at.

Product

  • Vision/Roadmap

    • What is product vision? And the strategy?
    • Which is the key (or key 3) epic/theme/topics to focus now
  • Market/Competitiveness

    • Which market segment you play
    • Who are your competitors? How do you Differentiate?
    • Where and how do you get insights?
    • Design drive, data driven, gut feeling driven?
  • How is product documented? Communicated? Which tools (documentation; communication)? To Whom?

  • How is engagement with engineering? Expectations you would have for me?

I think very seldom you get the chance to talk to a product responsible during an engineering interview process. But if you do, it is a great chance to really learn how the product is created.

Thanks Pippo for the help.

Office/workplace

  • Location
  • Hardware, phone etc. pick your own? Given?
  • Standing desk? Important for me

In many companies you can already see those on their website. At least for me the location is the first thing to check if not working remote.

Other Topics

  • Legal
    • GDPR. Maybe outdated now.
    • Any other special rules to follow? Banking, transportation? Etc.
  • Compensation, stock options?
  • OSS company approach
  • Learning
    • Safari
    • Conferences
  • How do you claim back a low value purchase? Like a book

Closing

When I have been in an interview process, it doesn’t mean that I need to go through all of them. But it is a guideline I use to understand better the companies.

In case one day you are about to interview me, now you can be prepared also :)