DEV Community

Cover image for Does this engineering culture suck? (How to find out before you take the job)
Michael Mangialardi
Michael Mangialardi

Posted on

Does this engineering culture suck? (How to find out before you take the job)

Interview the Company

If I were to go on LinkedIn and search "UI developer," I would find a plethora of jobs with almost identical job descriptions.

However, each job could have a very, very different engineering maturity in its culture that could make or break your experience there.

So, how do you avoid entering into a bad engineering culture?

You have to ask questions to draw this out upfront.

Don't let the 5+ rounds of interviews with technical challenges fool you. You are interviewing the company as much as they are interviewing you.

Before you take a job, make sure to ask good questions that give you a sense of the engineering culture. It can be a bit illusive to know what to ask, so I'll give you some pointers:

Questions to Ask

  • What is the acceptance criteria for a branch to get merged into main?
    🚩Red flag: No mention of making sure the code reaches a quality threshold based on determined standards/practices.

  • What is technical debt and how does this team address it?
    🚩Red flag: Very abstract conversation, nothing actual process to point to.

  • Can you tell me the difference between tactical and strategical development? Where does this team lie on the spectrum?
    🚩Red flag: Unable to understand the question.

  • Why are professional goals important to work towards in addition to releasing features? How does the manager take this responsibility upon themself?
    🚩Red flag: Very abstract conversation, nothing actual process to point to.

  • What are the roles and responsibilities of engineering leads and engineering managers? How do the two roles differ?
    🚩Red flag: The roles don't differ, and one person is doing both.

  • Can you show me an outline of an example 1-on-1?
    🚩Red flag: Very abstract, nothing concrete to point at.

  • How do you distinguish between the different levels of engineering maturity between teammates when assigning work?
    🚩Red flag: There is no distinction between levels of maturity.

  • How does this team aim at maintaining good talent amidst their developers?
    🚩Red flag: They haven't really thought about it.

  • Can I explore some of the codebase?
    🚩Red flag: They won't let you.

  • Who determines the product roadmap and what pushback do the developers have to negotiate time for technical improvements/vision?
    🚩Red flag: An abstract answer.

  • If I want to be the best possible engineer I can, why would I join this company?
    🚩Red flag: They won't let you.

Many more questions could be thought of, but hopefully this gets you thinking on the right track.

If you want to get your brain juices flowing even more, I highly recommend reading this book on software philosophy.

Top comments (0)