Consultant & Software Engineering Interview Questions

Written Interview
Questionnaire poste Consultant and Software Engineer

Informations de contact




Carrière et Objectifs

NB: À noter de remplir les trois premières questions en langue française








Object Oriented Programming



{"id":1,"first_name":"Ada","last_name":"Lovelace","email":"ada@acme.io","company_id":5,"phone":"+1 555-1","title":"CTO","created_at":"2025-05-01"}
{"id":2,"first_name":"Ada","last_name":"Lovelace","email":"Ada@acme.io","company_id":5,"phone":null,"title":"Chief Tech Officer","created_at":"2025-05-03"}
{"id":3,"first_name":"Alan","last_name":"Turing","email":"alan@acme.io","company_id":5,"phone":"+1 555-2","title":"Engineer","created_at":"2025-05-02"}
            
Expected output :
{"id":1,"first_name":"Ada","last_name":"Lovelace","email":"ada@acme.io","company_id":5,"phone":"+1 555-1","title":"Chief Tech Officer","created_at":"2025-05-01"}
{"id":3,"first_name":"Alan","last_name":"Turing","email":"alan@acme.io","company_id":5,"phone":"+1 555-2","title":"Engineer","created_at":"2025-05-02"}
            
Provide your solution (code and/or explanation) below :


Database Questions





Database schema (référence)

Company   (id PK, name, industry, created_at)
Contact   (id PK, first_name, last_name, email, company_id FK→Company.id, created_at)
Deal      (id PK, title, stage ENUM('lead','qualified','proposal','won','lost'),
           amount DECIMAL, company_id FK→Company.id, created_at, closed_at)
Activity  (id PK, type ENUM('call','email','meeting','task'), due_date DATE,
           completed BOOLEAN, contact_id FK→Contact.id, owner_id INT, created_at)
    










A. SELECT id
   FROM Deal
   WHERE stage_updated_at < CURRENT_DATE - INTERVAL '30 day'
     AND NOT EXISTS (
         SELECT 1 FROM Activity
         WHERE completed_at > CURRENT_DATE - INTERVAL '14 day');

B. SELECT d.id
   FROM Deal d
   LEFT JOIN Activity a ON a.deal_id = d.id
   WHERE d.stage_updated_at < CURRENT_DATE - INTERVAL '30 day'
   GROUP BY d.id
   HAVING MAX(a.completed_at) <= CURRENT_DATE - INTERVAL '14 day';

C. SELECT DISTINCT d.id
   FROM Deal d, Activity a
   WHERE d.id = a.deal_id
     AND d.stage_updated_at < CURRENT_DATE - INTERVAL '30 day'
     AND a.completed_at < CURRENT_DATE - INTERVAL '14 day';

D. WITH stalled AS (
       SELECT id FROM Deal
       WHERE stage_updated_at < CURRENT_DATE - INTERVAL '30 day')
   SELECT id FROM stalled;
        






Problem Solving




Definition of “Quintile”: any of five equal groups into which a population can be divided according to the distribution of values of a particular variable.

















Skill signal : ability to reason about freelancers, job-switching, multiple affiliations and pick a pragmatic hybrid design.


Deal     (id, stage, stage_updated_at, company_id, created_at)
Activity (id, deal_id, completed_at)
    

Communication