Bentley Systems is a leading infrastructure engineering software company providing cutting-edge solutions that advance the world's infrastructure. With offerings like MicroStation, ProjectWise, and the iTwin Platform, Bentley empowers professionals and organizations across the globe to design, construct, and operate a wide range of infrastructure projects.
As a Software Engineer at Bentley Systems, you will be an integral part of a dynamic and innovative team. You will work on the next generation of infrastructure engineering applications using advanced technologies like AI/ML, IoT, and Reality Data. This role involves writing well-tested, maintainable code, participating in an agile software development process, and constantly adapting to new technologies. If you're passionate about impacting global infrastructure while working in a supportive and collaborative environment, this guide is for you! In the following sections, we’ll walk you through Bentley Systems' interview process, common questions, and key preparation tips tailored for the Software Engineer role. Let's get started!
The first step in the Bentley Systems Software Engineer application process is to submit a compelling application that reflects your technical skills and interest in joining the company. Whether you were contacted by a Bentley Systems recruiter or have taken the initiative yourself, carefully review the job description and tailor your CV according to the prerequisites.
Tailoring your CV may include identifying specific keywords that the hiring manager might use to filter resumes and crafting a targeted cover letter. Additionally, don’t forget to highlight relevant skills and mention your work experiences.
If your CV happens to be among the shortlisted few, a recruiter from the Bentley Systems Talent Acquisition Team will make contact and verify key details like your experiences and skill level. Behavioral questions may also be a part of the screening process.
In certain cases, the Bentley Systems hiring manager may also be present during the screening round to answer queries about the role and the company itself. They might also indulge in surface-level technical and behavioral discussions.
The whole recruiter call should take about 30 minutes.
Successfully navigating the recruiter round will present you with an invitation for the technical screening round. Technical screening for the Bentley Systems Software Engineer role is generally conducted through virtual means, including video conference and screen sharing. Questions in this 1-hour long interview stage may revolve around object-oriented programming, API design patterns, performance and scale, modern web, and desktop application architecture.
You may also be required to complete take-home assignments regarding code reviews, unit testing, and development using frameworks such as React, Angular, or Electron. Your proficiency in languages like C++, Java, or Rust and your ability to design secure software can also be assessed.
Following a second recruiter call outlining the next stage, you’ll be invited to attend the onsite interview loop. Multiple interview rounds, varying with the role, will be conducted during your day at the Bentley Systems office or virtually if the role is remote. Your technical prowess, including programming capabilities and system design skills, will be evaluated during these interviews.
If you were assigned take-home exercises, a presentation round may also await you during the onsite interview for the Software Engineer role at Bentley Systems.
Quick Tips For Bentley Systems Software Engineer Interviews
You should plan to brush up on any technical skills and try as many practice interview questions and mock interviews as possible. A few tips for acing your Bentley Systems interview include:
Typically, interviews at Bentley Systems vary by role and team, but commonly Software Engineer interviews follow a fairly standardized process across these question topics.
Write a SQL query to select the 2nd highest salary in the engineering department. Write a SQL query to select the 2nd highest salary in the engineering department. If more than one person shares the highest salary, the query should select the next highest salary.
Write a function to merge two sorted lists into one sorted list. Given two sorted lists, write a function to merge them into one sorted list. Bonus: What's the time complexity?
Create a function missing_number
to find the missing number in an array.
You have an array of integers, nums
of length n
spanning 0
to n
with one missing. Write a function missing_number
that returns the missing number in the array. Complexity of (O(n)) required.
Develop a function precision_recall
to calculate precision and recall metrics from a 2-D matrix.
Given a 2-D matrix P of predicted values and actual values, write a function precision_recall to calculate precision and recall metrics. Return the ordered pair (precision, recall).
Write a function to search for a target value in a rotated sorted array. Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. You are given a target value to search. If the value is in the array, return its index; otherwise, return -1. Bonus: Your algorithm's runtime complexity should be in the order of (O(\log n)).
Would you think there was anything fishy about the results of an A/B test with 20 variants? Your manager ran an A/B test with 20 different variants and found one significant result. Would you suspect any issues with these results?
How would you set up an A/B test to optimize button color and position for higher click-through rates? A team wants to A/B test changes in a sign-up funnel, such as changing a button from red to blue and/or moving it from the top to the bottom of the page. How would you design this test?
What would you do if friend requests on Facebook are down 10%? A product manager at Facebook reports a 10% decrease in friend requests. What steps would you take to address this issue?
Why might the number of job applicants be decreasing while job postings remain constant? You observe that the number of job postings per day has remained stable, but the number of applicants has been decreasing. What could be causing this trend?
What are the drawbacks of the given student test score datasets, and how would you reformat them for better analysis? You have data on student test scores in two different layouts. What are the drawbacks of these formats, and what changes would you make to improve their usefulness for analysis? Additionally, describe common problems in "messy" datasets.
Is this a fair coin based on 10 flips resulting in 8 tails and 2 heads? You flipped a coin 10 times, resulting in 8 tails and 2 heads. Determine if this outcome suggests the coin is fair.
How would you write a function to calculate sample variance for a list of integers?
Write a function that takes a list of integers and outputs the sample variance, rounded to 2 decimal places. For example, given test_list = [6, 7, 3, 9, 10, 15]
, the function should return 13.89
.
Is there anything suspicious about an A/B test with 20 variants where one is significant? Your manager ran an A/B test with 20 different variants and found one significant result. Evaluate if there is anything suspicious about these findings.
How would you find the median of a list where more than 50% of the elements are the same, in O(1) time and space?
Given a sorted list of integers where more than 50% of the list is the same integer, write a function to return the median value in O(1) computational time and space. For example, for li = [1, 2, 2]
, the function should return 2
.
What are the drawbacks of the given student test score data layouts, and how would you reformat them for better analysis? You have student test score data in two different layouts. Identify the drawbacks of these layouts, suggest formatting changes to make the data more useful for analysis, and describe common problems seen in "messy" datasets.
How would you evaluate whether using a decision tree algorithm is the correct model for predicting loan repayment? You are tasked with building a decision tree model to predict if a borrower will pay back a personal loan. How would you evaluate if a decision tree is the right choice, and how would you assess its performance before and after deployment?
How does random forest generate the forest and why use it over logistic regression? Explain the process by which a random forest generates its ensemble of trees. Additionally, discuss why one might choose random forest over logistic regression for certain problems.
When would you use a bagging algorithm versus a boosting algorithm? Compare two machine learning algorithms. Describe scenarios where you would prefer a bagging algorithm over a boosting algorithm, and discuss the tradeoffs between the two.
How would you justify using a neural network for a business problem and explain its predictions to non-technical stakeholders? Your manager asks you to build a neural network model to solve a business problem. How would you justify the complexity of this model and explain its predictions to non-technical stakeholders?
What metrics would you use to track the accuracy and validity of a spam classifier? You are tasked with building a spam classifier for emails and have completed a V1 of the model. What metrics would you use to evaluate the model's accuracy and validity?
Average Base Salary
Average Total Compensation
The position focuses on building next-generation infrastructure engineering applications using the iTwin Platform. You'll work with advanced technologies such as AI/ML, IoT, and Reality Data, contributing to the digital twin ecosystem.
Key responsibilities include writing well-documented and maintainable code, participating in code reviews, engaging in discovery and experimentation, continuous learning and adaptation, and working in an agile software development environment.
Candidates should have a Bachelor's degree in computer science or software engineering, at least 2+ years of experience as a Software Developer, and knowledge in modern application architecture, API design, object-oriented programming, and working with Git. Proficiency in web security and ability to learn new technologies quickly are also essential.
Bentley Systems offers a challenging, friendly, and supportive environment. The company values continuous learning, innovation, and collaboration with a focus on developing world-leading software solutions for infrastructure engineering. They provide robust support for career growth within an international team.
To prepare for an interview at Bentley Systems, research the company and its products, review the listed qualifications and responsibilities for the role, and practice common interview questions using resources available from Interview Query.
Embark on an exciting journey with Bentley Systems, where innovation meets opportunity. As a Software Engineer, you will be at the forefront of revolutionizing infrastructure engineering applications, applying cutting-edge technologies and working with a global team of experts. With a commitment to continuous learning, constructive collaboration, and high-quality code, Bentley Systems offers a supportive and enriching environment to grow as a professional.
If you want more insights about the company, check out our main Bentley Systems Interview Guide, where we have covered many interview questions that could be asked. We’ve also created interview guides for other roles, such as software engineer and data analyst, where you can learn more about Bentley Systems’ interview process for different positions.
At Interview Query, we empower you to unlock your interview prowess with a comprehensive toolkit, equipping you with the knowledge, confidence, and strategic guidance to conquer every Bentley Systems software engineer interview challenge.
Good luck with your interview!