Mastering Programming Job Exams: Essential Techniques and Algorithms for Success

In summary, most problem solving techniques algorithms for programming jobs can be learned from a book or by practice. However, to distinguish between mediocre, good, or great programmers, the real test is when they sit you in front of an interviewer.
  • #1
nameVoid
241
0
I would like to know what to review for tests given by employers for programming jobs most problem solving techniques algorithims i recently took one and was caught off guard by how to find the abs min of a set was
 
Physics news on Phys.org
  • #2
nameVoid said:
I would like to know what to review for tests given by employers for programming jobs most problem solving techniques algorithims i recently took one and was caught off guard by how to find the abs min of a set was

There are usually several rounds of tests. Paper tests are usually pretty easy if you have any sort of experience because those are intended to quickly get rid of anyone that clearly has no chance of being qualified. However, this is just a quick screening. The real test will be when they sit you in front of an interviewer and they ask you programming questions.

The problem with paper tests is that they can tell you who has no hope of being qualified, but they are horrible for distinguishing between mediocre, good, or great programmers. If the test asks you to do a binary sort, and you can do that, it's possible that you memorized the answer, but if the test asks you to do a binary sort and you can't answer that, then there's no point in continuing the process.
 
  • #3
I don't think such test exist. Perhaps, your best bet is get a programming problem solving book.

One of my friends was talking about some Euler problems (google it) and I believe it is close to what you are looking for.

Btw, finding the absolute min just requires you to cycle through the array/set and keep updating the "min" variable based on the values in the set.
 
  • #4
nameVoid said:
I would like to know what to review for tests given by employers for programming jobs most problem solving techniques algorithims i recently took one and was caught off guard by how to find the abs min of a set was

What kind of job are you applying for? PHP? Database (SQL)? Simulation Systems? Video Games? Expert Systems? Business Intelligence?

When I used to be a programmer I was essentially asked to solve problems quickly and concisely in a specific domain (video games). My experience consisted of programming (self-taught) and project work (one year long collaborative project of about 20 people) and demo work.

My guess is that you have to have very strong domain knowledge to pass your technical exam. They will probably not ask you simple things like writing a bubble sort, but things like what projects have you worked on? Then they should test you by asking you to solve an actual problem that is probably elementary in their field, but none the less, a critical indicator of you being able to see the forest from the trees.

Tests like "what is a class?" and similar questions probably will not be asked. But from experience I did get some questions which were the kind to trip you up (one question asked me what the mutable keyword did in C++). You might asked things like what types of casting would you use in some coding problem, or perhaps to debug a bit of code, but if you have enough experience, you will be able to draw on that to answer those questions.

If you have experience doing stuff in your domain and have done project work with other people whether its at uni or as a junior at some other job, you should be ok because you have gotten your hands dirty. If you don't have this kind of experience be it domain or general project experience, then I would get some.
 
  • #5
I'm trying very hard to not be judgemental here. I generally don't think much of employers asking potential employees with 20 years of experience to write a linked list function.

But if you were tripped up by trying to find the absolute min of a set of numbers... the question might have functioned as intended.
 
  • #6
TMFKAN64 said:
I'm trying very hard to not be judgemental here. I generally don't think much of employers asking potential employees with 20 years of experience to write a linked list function.

The sad fact is that looiking from the other side of the interviewing table, "20 years experience" is sometimes indistinguishable from "20 years living in the mud at the bottom of a pond".

There are good legal (anti-discrimination) reasons for dealing with every applicant the same way, so if you want to ask some of them technical questions, you ask all of them. But I admit that as an interviewer sometimes I explain and/or apologize that we have to do this as a formality, when it is already obvious how much the applicant knows.
 
  • #7
Job exams is for more than just programmers. The prospective employer, in ANY field, must (or seriously should want to) examine the candidates' skills and knowledge. The examination could be to check for fundamental knowledge, fundamental skills, and job-specific experience.

"...potential employees with 20 years of experience" ----- Trust me, someone who worked alongside a few people over some years, that not everyone knows what they ought to know. One would wonder how some of them actually keep their jobs. Other people are there to take-up some of the tasks which these other dubious but experienced people do poorly.

At least when an interviewer tests candidates of any amount of experience for technical qualifications, the interviewer knows who is qualified.
 
  • #8
symbolipoint said:
At least when an interviewer tests candidates of any amount of experience for technical qualifications, the interviewer knows who is qualified.

I don't think that a majority of questions of this sort tell the interviewer who is qualified though... only who is *grossly* unqualified.

I'm not saying don't ask technical questions... but there is an appropriate level of difficulty, and if it's not an entry-level position, linked lists and the like is probably not it.
 
  • #9
TMFKAN64 said:
I don't think that a majority of questions of this sort tell the interviewer who is qualified though... only who is *grossly* unqualified.

True, but that gets rid of about 60% of the applicants. One thing about the internet is that the moment you mention that you have a job opening, you are going to be spammed by a ton of resumes, and a very large fraction of the people applying are going to be completely unsuited for the position. If the job requires a Ph.D. in astrophysics, there is nothing that keeps someone with a high school diploma from sending in their resume, and it much of the problem in hiring is getting rid of the stack of people that have zero chance of getting the job.

Also, you don't know that the person has 20 years of experience. You know that they *say* that they have 20 years of experience. I've been in situations where people that have some incredibly well written resumes fall apart on some questions that are so simple that I start wondering how accurate the resume is. (The opposite also happens.)
 
  • #10
Here's a very good book which covers a lot of different questions you may hear: https://www.amazon.com/dp/145157827X/?tag=pfamazon01-20. You can read the table of contents and a few pages before deciding whether or not to purchase.

Overall, be ready to think analytically and "outside the box".
 
Last edited by a moderator:

FAQ: Mastering Programming Job Exams: Essential Techniques and Algorithms for Success

What is "Mastering Programming Job Exams" about?

"Mastering Programming Job Exams" is a book that provides essential techniques and algorithms for success in programming job exams. It covers topics such as data structures, algorithms, problem-solving strategies, and coding best practices.

Who is the target audience for this book?

The target audience for this book is anyone who is preparing for programming job exams, whether they are recent graduates, experienced programmers looking to switch jobs, or individuals seeking to improve their programming skills.

What makes this book different from other programming exam preparation resources?

This book is unique because it not only provides important algorithms and techniques for solving programming problems, but it also teaches readers how to approach and think about these problems. It focuses on building a strong foundation of problem-solving skills rather than just memorizing solutions to specific problems.

Are there any prerequisites for reading this book?

While prior programming experience is helpful, this book is designed for readers of all levels. It starts with the basics and gradually builds upon them, making it accessible to beginners and experienced programmers alike.

Where can I find practice problems to accompany this book?

The book includes practice problems and solutions, but readers can also find additional practice problems on coding platforms such as LeetCode, HackerRank, and Codeforces. These platforms offer a variety of programming challenges and can help readers reinforce the concepts learned in the book.

Similar threads

Replies
10
Views
2K
Replies
10
Views
2K
Replies
8
Views
2K
Replies
121
Views
17K
Replies
108
Views
17K
Replies
1
Views
2K
Back
Top