After a first email saying that they reviewed my resume and application, they asked for a phone interview. We spoke about my background and the projects that I worked on. I had many occasions to ask anything that I wanted to know about the company and the job. After a couple of days, they asked to go on in the process, and I had the technical interview.
The technical interview is not a real interview; it's more like an exam. You will use a system called ProctorU, which allows you to do this sort of online exam while always having someone proctoring you so that you cannot cheat. The assessments are divided into 4 parts, as described below.
The only things allowed during the exam are a calculator and pen and paper.
It wasn't too clear which was the maximum time allowed for the entire exam, probably 2 hours, but two people at two different moments told me different things during the system setup before the start. After the 2 hours, nothing stopped me, and I went on with my exam. I took 3 and a half hours to complete everything (I know, definitely too slow, but it's a long exam, trust me).
Three weeks after the technical interview, they sent me an email saying that they have selected other candidates rather than me to go on with the selection process. End of my experience with Epic.
First part: general questions about logic and simple math. It's a speed test: you have 2 minutes and you have to try to answer as many questions as possible.
Second part: Maths. General questions about logic and math, more complicated than the previous part. It's not a speed test but it's about accuracy. However, time is taken into consideration. No previous math knowledge is required; you won't be asked to prove a theorem or something like that. Logic and familiarity with calculations are the key to solving these problems.
Third part: learning a new programming language. They will test your ability to learn a new programming language by teaching you a new and unknown programming language that is probably the one they use to create their products. It's different from all other programming languages, and they will start with the basics. Step by step, they will teach you more complicated stuff, but always remaining on a low complexity. At each step, you have to answer questions about what you just learned. You are always able to go back and review all the previous pages if you're not sure about something. Not too difficult, but some questions are very tricky; be careful. Accuracy is the key, but time is taken into consideration.
Fourth part: general programming skills. You will have 4 problems to solve, writing a small program or function(s). You can use any language. Accuracy is the key, but time is taken into consideration. You have no help from the editor, and you cannot compile or check for any kind of error. The problems are not too difficult, but even the simplest problem can be solved in clever or stupid ways, and they probably look at that. Most of the problems include simple mathematics, logic, and working on strings to check or modify them, jumping from numbers to characters and vice versa. You don't need to use objects or anything complicated; everything can be solved in simple C if you want, but again, it's up to you to show your skills to them, so use a good balance between time in writing the program, complexity, generality, etc.
The following metrics were computed from 687 interview experiences for the Epic Systems Software Engineer role in United States.
Epic Systems's interview process for their Software Engineer roles in the United States is extremely selective, failing the vast majority of engineers.
Candidates reported having good feelings for Epic Systems's Software Engineer interview process in United States.