View our ongoing consumer research and insights in response to the Coronavirus outbreak.
COVID-19 Insights Center
Life at Civis | 1.23.20

Interviewing with Tech at Civis Analytics


Anthony Lat
Senior Technical Recruiter

 

Let’s be real. Interviews can be weird, challenging, awkward, confusing, and complicated all at the same time. At Civis, we want to make this experience as best as possible for all candidates. Your candidate experience is our top priority and we strive for it to be nothing short of excellent. If you are interested in a Technical role at Civis, please see what the process would be like for you below!


Intro

Engineers at Civis work hard to make sure our clients are using the best data science platform and products to create the most effective business strategies. It’s more than just software, our Engineers help our commercial, political, and nonprofit clients understand their data to reach millions of people in their audience, understand and target voters, allow cities and states to ensure an accurate count of their populations, keep millions of people free from disease, and much more! At Civis, we’re always looking for great additions to our growing engineering team. If you are passionate about data, solving technical challenges, and creating innovative products, we want to talk to you! Throughout the interview process, we aim to share more about Civis, the great people that work here, and most importantly, we like to learn about you.

Our interviews usually consist of 3 phases:

  1. introductory call
  2. online technical assessment
  3. onsite interview.

Our process is smooth and efficient; we don’t like to put a lot of unnecessary steps in between. In order to make sure that you are best prepared, we have outlined what the interview process looks like at each step.


Initial Conversations

After reviewing your resume your recruiter will get in contact with you to have a phone conversation. To kick things off, we will start with a 30-minute phone conversation. This will include introductions on both ends – an introduction to Civis, details on the role, and exploring your background. We also want to know what you are interested in and discuss how you can see yourself at Civis. Apart from the introductions, we will talk about the process and timelines on your end. We want to work with your schedule because your convenience is our top priority. Your recruiter will be with you from start to finish – so please be sure to let them know if you need any accommodations or have any questions moving forward.

On occasion, and for specific roles, we set up a coffee-meetup with one of our tech staff or hiring managers. During these interactions, you can expect to hear more about the day in the life of Engineers at Civis along with projects that we are excited about, complex problems we are trying to solve, and new technologies that are being utilized. We also want to hear from you – so expect to share your background and what you are passionate about. If you want to get connected to anyone in our tech staff during the process, please let your recruiter know!


Technical Assessments

Once you have passed our pre screening processes, and it’s a mutual fit on both sides, the next step of the process is a technical assessment. We use a technical assessment for all our Engineering roles at Civis. For roles in Software Engineering, Data Engineering, and Applied Security Engineering we use an online assessment tool via Codility. This is an assessment you can take at your own convenience. We advise that you set at least 2 hours to complete it. The assessment will include ten multiple-choice questions and two coding challenges that you can complete in the language of your choice within the allotted time. The assessment is designed to give you the opportunity to demonstrate skills that our engineers use and develop every day. 

To help you feel prepared, this is an overview of what we cover in this stage. Feel free to access other online assessments/resources and brush up on your skills in the following areas:

  • Web application concepts
  • Basic SQL
  • Database queries
  • Basic algorithmic/logic, time complexity
  • Data Structures
  • Code evaluation

Once you have completed the assessments and submitted your test, you can expect to hear back within 48 business hours or less. Your assessment will be reviewed by our tech staff and your recruiter will reach out to you as soon as possible. If you have additional questions about the assessment via Codility please see the Codility Candidate FAQ at https://app.codility.com/candidate-faq/ for more information about the test. 

Employee Working


Onsite Interviews

The big day! If the results of your online technical assessment are positive, we invite you to come onsite to meet the rest of our staff and do a final round interview. It means a lot to us when candidates are willing to take out time to visit our office and meet us in person. We want to ensure that you have the best experience possible and make sure you feel prepared, so we will cover what to expect when you come onsite.

Scheduling: First things first, we have to get you scheduled! After being notified by your recruiter, you will be in touch with a recruiting coordinator to schedule your onsite interview. Ideally, we like to schedule your onsite interview within 2 weeks. We also understand work schedules, personal schedules, and whatever else may arise, so we are flexible and work with a date and time that is best for you. Once you submit your availability your coordinator will schedule your interview and send a confirmation email with an agenda right away. If you need any changes at all to your interview date or time, please let us know as soon as possible!

Travel: Not local? Not a problem! If you require extended travel, your coordinator will put you in touch with a resource to help you select and book a flight to our office and back home. You will also be covered for additional travel, food, stay, and other accommodations if necessary.

Employee Working


Technical Onsite Interview

Our onsite interviews for Engineers share a similar format:

  1. Cross Department Interview
  2. Code Review, Architecture Exercise
  3. Process Question (Live Coding)
  4. Hiring Manager Interview
  5. Recruiter Close

We conduct two behavioral interviews and two technical interviews. Be advised that our interviews are not meant to be an interrogation or trick questions. We want to see how you think, how you arrive at solutions, how you troubleshoot, and how you respond and communicate. We also care much more about how you can identify and overcome your mistakes rather than if you simply make them. This is an opportunity for you to be yourself and demonstrate your expertise. We also want to make sure that you can walk away with all your questions answered and genuinely enjoy your time being here. Below we will briefly go through what to expect at each interview and how you should best prepare for it.

Cross Department Interview: All of our tech roles start off with a Cross Department Interview. During this interview, you will get a chance to meet someone outside of Engineering. These interviews are usually led by a staff member in Applied Data Science, Product Management, Client Success, or Product Design. You will get a chance to learn about other areas at Civis and even demo our products! We will also ask some questions around your work experience, examples of leadership/mentorship, and something you are learning.

Code Review and Architecture Exercise: For both technical interviews, you will be joined by two of our engineers. We always start off with the Code Review. Think of this interview as a conversation; you are given a sample of code and asked to evaluate it. You will be expected to respond with quality concerns, maintainability best practices, security issues, etc. The code will be in Python but you can treat it as pseudo code.

In the next part of this interview, you will be asked to talk through architectural improvements to the previous code example you reviewed. 

For the first part, the general advice is to treat this as a Github Pull Request; we are looking for opinions! Successful candidates can clearly express thoughts and opinions and have healthy conversations around how things are written and built. Another way to look at it is, “how would you treat reviewing a fellow engineer’s code?” We just want to see how you digest code that is new to you, and how you communicate technical feedback to a peer.

For the second part, make it a conversation. Make sure to ask a lot of questions and lay out your assumptions. Then use those assumptions to build a solution that you and your interviewer can talk about together. For this part of the interview, there is truly no right or wrong answer! Don’t spend time trying to think of an answer the interviewers want to hear. Think of an answer that is intuitive and you can reason about with your interviewers.

Process Question: The second technical assessment will be a live coding interview to evaluate coding proficiency and problem-solving skills. This is a more traditional technical interview question; you will be presented with a problem and will be expected to apply your knowledge of data structures and algorithms to come up with a solution. The questions are based on real work examples our engineers encounter so we look forward to seeing your approach!

Make sure you choose the language of your choice and, if possible, bring your own laptop so you have an IDE that you are comfortable with.

To help you be prepared, feel free to access other online assessments/resources and brush up on your skills in the following areas:

  • Data Structures
  • Algorithms
  • Understand how to evaluate time and space complexity of your code
  • Test and debug code
  • Recursion

Hiring Manager Interview: Following the technical assessments, we end with the Hiring Manager Interview. Here you will have the opportunity to meet a member of our Tech Leadership. This will usually include someone from the Director level or Tech Lead. Our hiring managers want to get to know you as much as possible. We like to hear about your past experience, what you are passionate about, and where you eventually see yourself. Something that is unique about our Engineering culture is how much we value mentorship, growth, and learning. Therefore, from a leadership perspective, we want to see how we can best position you for success and make sure that this role aligns with your long term and short team goals.

Followed by getting to know your experience we might also ask you some technical questions related to similar content you received before. We typically don’t weigh our hiring decisions solely based on trivial questions, nor do we want to. We only use these questions to learn a little more about your technical experience and see what areas of opportunity we can help you learn.

Recruiter Close: After your interview(s), your recruiter will meet with you to talk about the next steps, answer any last-minute questions, and then walk you out.

Employee working


General Interview Tips

The biggest piece of advice we give to anyone who is interviewing is to communicate well and be confident in yourself and your abilities! We don’t hire folks just for their resume, what companies they have been with, and their title – we hire you for you! There’s no mold or culture-fit that anyone has to have at Civis, we think of everyone that joins is a culture-add. Communication is always a big piece; the Engineering staff is a collaborative, teamwork focused, and dynamic group. Working within a team, sharing ideas, and trusting others are what we are all about! Mentioned before, but we are always looking for candidates who can have a healthy conversation around engineering and are willing to learn and listen about new perspectives. Overall, come as you are and be prepared to share your best self – we will do the same!

What to bring – Please be sure to bring a laptop (charged), a charger (let’s be safe), and yourself! We also have your resume, so no need to print out copies. #savethetrees

As stated before, please be sure to bring your own laptop you have the proper programs and environments set up and ready to go. If you don’t have a computer you can bring or it fails the day of your interview, no worries! We can provide one for you to use the day of your interview.

Dress Code – At Civis, we don’t really have a dress code apart from “casual”. Feel free to wear a t-shirt and jeans or whatever is comfortable for you!

Location – We are located in The Loop! Please ask your recruiter or coordinator for specific directions on how to get to our office.

Employees working


After the Interview

You can typically expect to hear back with a decision within 48 hours. Regardless of the outcome we still want to be able to provide feedback and answer any questions that you have. We are also happy to hear any feedback you have for us or the process altogether! Your experience, whether positive or negative, is helpful for us to improve how we conduct interviews and the process in the future.


We Hope to Hear From You Soon!

If you managed to read this whole blog, we thank you! Your time and consideration mean a lot to us. If you are excited as we are, let’s start a conversation; please see our Tech roles on our Civis Careers page. If you are ready to start the journey with us, please apply! We look forward to meeting you soon!