Lead Software Engineer
Employment type
Permanent Full-Time
Location(s)
Description & Requirements
***Please submit your application in English
WHAT MAKES US A GREAT PLACE TO WORK
We are proud to be consistently recognized as one of the world’s best places to work, a champion of diversity and a model of social responsibility. We are currently #1 ranked consulting firm on Glassdoor’s Best Places to Work list and have maintained a spot in the top four on Glassdoor’s list for the last 13 years. We believe that diversity, inclusion and collaboration is key to building extraordinary teams. We hire people with exceptional talents, abilities and potential, then create an environment where you can become the best version of yourself and thrive both professionally and personally. We are publicly recognized by external parties such as Fortune, Vault, Mogul, Working Mother, Glassdoor and the Human Rights Campaign for being a great place to work for diversity and inclusion, women, LGBTQ and parents.
WHO YOU’LL WORK WITH
Vector is Bain’s integrated digital and analytics capability, bringing together Enterprise Technology and AI, Insights & Solutions (AIS) to deliver cutting-edge innovation. AIS, formed through the merger of Bain's Advanced Analytics and Innovation & Design teams, is a diverse group of experts in analytics, engineering, product management, and design. Together, we create human-centric solutions that leverage the power of data and artificial intelligence to drive competitive advantage for our clients.
WHAT YOU'LL DO
As a Lead, Software Engineering, you will leverage your experience to implement and refine technical solutions for a wide range of industries. Working with a diverse team, you will engage in the entire engineering life cycle, focusing on designing, developing, optimizing, and deploying sophisticated software engineering solutions and infrastructure at a production scale suitable for the world’s largest companies.
- Collaborate closely with and influence general consulting teams to identify software solutions to client business problems, to prioritize and execute those solutions
- Serve as a technical lead in delivering end-to-end solutions for client cases (from solution architecture to hands-on development work)
- Participate in the software development life cycle including designing distributed systems, reviewing documentation, and conducting code reviews
- Participate in expert client advisory services that require expertise in software engineering with distributed systems, AI and application architecture
- Collaborate on the development of reusable common frameworks, models, and components to efficiently address common software engineering challenges across various industries and business functions
- Champion best demonstrated practices in software engineering, and share learnings with team members in AIS about theoretical and technical developments in software engineering
- Lead industry-leading innovations that translate into great impact for our clients in case work
- Influence, educate and directly support the software engineering capabilities of our clients
- Stay current with emerging trends and technologies in cloud computing, data analysis, and software engineering, and proactively identify opportunities to enhance the capabilities of the software platform
- Travel is required (30%)
ABOUT YOU
- Master’s degree in Computer Science, Engineering, or a related technical field
- 5 years minimum experience
- 3+ years at Senior or Staff level, or equivalent
Technical Skills and Knowledge:
- Working knowledge (4+ years) of Python
- Experience with server-side frameworks and technologies such as FastAPI, Node.js, Flask.
- Experience with Cloud platforms and services (AWS, Azure, GCP, etc.)
- Experience with implementation of large-scale structured or unstructured databases, orchestration and container technologies such as Docker, Kubernetes, Jenkins or Terraform
- Strong computer science fundaments in data structures, algorithms, automated testing, object-oriented programming, performance complexity, and implications of computer architecture on software performance.
- Experience with data architecture, database schema design, database scalability and SQL
- Knowledge of client-side technologies such as React, Angular, Vue.js, HTML and CSS
- Knowledge of agile development methodologies and principles
- Professional fluency in English and French with excellent communication (both oral and written) skills
Interpersonal Skills:
- Strong interpersonal and communication skills, including the ability to explain and discuss technicalities of solutions, algorithms and techniques with colleagues and clients from other disciplines
- Curiosity, proactivity and critical thinking
- Ability to collaborate with people at all levels and with multi-office/region teams
Other Experience:
- Relevant professional hands-on experience in web development, programming languages, version control, software design pattern, infrastructure and deployment, integration and unit testing implementation