I strongly would not recommend interviewing with Apex Systems, LLC (in Glen Allen, VA). [Interview review continued below.]
I was contacted first by a recruiter from Apex Systems. The recruiter, who was friendly and professional, told me his company could connect me to a one-year contract with employers like the Ford Motor Company and The Home Depot.
The recruiter said the interviewing process was a two-step process. First, you would do a one-hour interview with someone with Apex Systems. Second, you would do a two-hour interview directly with the client. The second step could be repeated a number of times because each client has multiple teams looking to hire. The recruiter said you would get "immediate" feedback after interviewing -- either the same day or within one business day (which didn't happen). As "security", the recruiter asked me for my current supervisor's name and my LinkedIn profile so I could repeat the information to "verify" my identity during the interview. Given these questions weren't asked during the interview, the company apparently was trying to glean more information so they could use it in deciding whether to hire me. To ask for information for a different reason than the one stated definitely is a dishonest way to do business.
The first interview/live coding challenge required you to have your IDE set up in a particular way. From the time I spoke with the recruiter and to the first interview, I had enough time to set up my environment, get the code working, and quickly read through the code base that Apex System provided.
At the beginning of the Zoom call, the interviewer from Apex System did not even introduce himself or say who he was, which I thought was odd.
As we got into the coding challenge, it became apparent the interviewer expected that I would have the code base memorized completely before the interview. Given the amount of time I had before the interview, that was not possible. Further complicating the matter was the fact that the environment set up required installing a third-party library that I don't believe I've ever heard of, isn't widely used in the industry, and changed the syntax of the programming language used. In short, Apex Systems has completely unrealistic expectations of what is possible for a Software Engineer interview given the process it has created for interviewees.
The interview was meant to recreate the pair programming experience, but the interviewer was pedantic from start. He would interrupt me while I was talking, tell me to do something, then sometimes would change his mind and tell me to do something different. The interviewer also would ask me basic questions I'm sure he knew that I knew the answer to, but asked anyway because he could. Even worse, the interviewer admitted that at least one of the variables was poorly named, and even at one point had me change code that was provided. Apparently that code wasn't intended to be changed, as it was explained to me. Even the interviewer eventually had to admit the process was somewhat flawed.
Besides being mostly unhelpful, the interviewer grew impatient as the interview went on and started sighing loudly on the microphone and making passive-aggressive comments. I'm not sure what the basis was for the disrespectful and condescending behavior. I've never experienced behavior like this from an interviewer representing a supposedly reputable company.
Overall, I was able to complete the coding challenge within the hour. My answer worked, and the code met the requirements of the challenge, as stated. I didn't complete the challenge as quickly as I probably could have, but, again, the interviewer was using my time, and there was no way I could have memorized Apex System's code base and familiarized myself with the third-party library that I and most people probably never heard of.
Now I can understand if Apex System does not want to work with me for any reason -- even though I've done professional programming work for other Fortune 500 clients. But what I really don't understand is the disrespect and mistreatment from this company when respectfully I'm just trying to earn a living. This is especially true considering that the company contacted me first and talked me up before the interview.
Days later, the recruiter offered me an apology for the interviewers' behavior, and seemed to confirm what I said about the interviewer's behavior, based on the feedback the interviewer provided to the recruiter. However, I asked the recruiter for an apology from the interviewer himself for his behavior. I haven't gotten one yet, and I won't be holding my breath.
I believe interviewers and companies like Apex Systems should be held accountable for mistreating interviewees, being disrespectful, and wasting peoples' time. Apex Systems is a dishonest and disrespectful company that you should avoid at all costs.