How to check seniority of programmer?

How to check seniority of programmer? I find this "Junior/Senior Developer" title wrong and misleading because there's no real measurement unit for this. We are all Software Developers with less or more hands-on experience. We should not try to create a hierarchy for Software Developers, there's no point and it can harm the main focus point: a great-software development team.

However, in our world there are differentiating factors between a.k.a "a senior programmer" and other programmers varies from company to company but the general rules can be broken down into a few categories: broad work experience, job quality level, and salary. Senior programmers solve problems. In general, they spend much more time on defining the problem and building cognitive models before jumping into coding. They understand programming is one of the means to solve a problem, and it's not the only one, in fact, in most of times, other methods are much more efficient. The junior developer may say "I have no idea why it crashes, I am stuck." A senior cannot have that luxury. More...

Most asked tricky interview questions

How many of you had stumbled upon an interview question you haven’t prepared yourself for, and your mind drew a blank? Before I go to a job interview, I usually take the time to review the most common interview questions you will most likely be asked. Also, I review sample answers and advice on how to answer these typical interview questions. More...

Top important things for career

As you consider what you are looking for as the next step in your career, what are the top three things that are important to you? The most important step in managing your career is to know yourself. This is true whether you are just beginning your career, or are well-established. Taking the time to focus on knowing yourself better will help you make decisions about your career and professional development that will lead to long-term satisfaction. If you skip this step, you run the risk of making career decisions without regard to what you really want, which can lead to dissatisfaction with your career. More...

Algorithm theory and complexity introduction

"Before there were computers, there were algorithms." - H.Cormen. But now that there are computers, there are even more algorithms, and algorithms lie at the heart of computing. What are algorithms? Informally, an algorithm is any well-defined computational procedure that takes some value, or set of values, as input and produces some value, or set of values, as output. An algorithm is thus a sequence of computational steps that transform the input into the output. We can also view an algorithm as a tool for solving a well-specified computational problem. The statement of the problem specifies in general terms the desired input/output relationship. The algorithm describes a specific computational procedure for achieving that input/output relationship. For example, we might need to sort a sequence of numbers into nondecreasing order. This problem arises frequently in practice and provides fertile ground for introducing many standard design techniques and analysis tools. More...

Debugging top 10 mistakes candidates make on tech interview

Most often interview mistakes are discussed many times on many sites. But I want to express my opinion on article on careercup.com web site that I like. Here top 10 of mistakes by career cup: Practicing on a Computer, Not Rehearsing Behavioral Questions, Trying to Memorize Solutions, Talking Too Much, Talking Too Little, Rushing, Not Debugging, Sloppy Coding, Giving Up. I will express my opinion on each mistake and my solutions on it in green color. For software engineering jobs, most companies, especially startups, just can't find qualified candidates, but the problem is that this candidate mistakes are common for big companies too. More...