Pushing logs to loggly with fluentd

Setting up Fluentd log publisher to Loggly is straightforward thanks to the detailed tutorials can be found online. Some useful readings:

One gotcha: numeric fields in loggly

By default everything … Continue reading

Are you interviewing for success or failure?

Top 5 interviewing mistakes and how to overcome them

Many people doesn’t think that way but interviewing is a skill just like communication or problem solving. In the field of IT it’s specifically highlighted where individuals can be extremely successful even with lacking social skills. I saw many companies making the mistake of putting the best developer or system engineer into the interviewing role which sometimes leads to disastrous results. Why that happens?

Top 5 mistakes technically excellent interviewers do

1) Taking it as an exam

We all went to school and we have vivid memories about our teacher who had a perfect sixth sense to find the only questions we didn’t know the perfect answer for. Although we shouldn’t repeat that I see it’s happening many times. Interviews should be about what the candidate knows not what he doesn’t.

2) Being hypothetical

There are certain situations when it’s benefical but in general hypothetical questions will be answered by hypothetical answers. You need to ask yourself what did I learn from this answer about candidate’s ability to contribute to our team/company. If you don’t find a satisfying answer you shouldn’t ask those questions.

3) Looking for specific answer

Another common mistake which can be a subset or result of the previous is that the interviewers ask a very open question which they expect a very specific answer. An answer which may be specific to their position, to the company etc. Do you want to hire somebody who thinks the same way you do or do you want to bring somebody with new perspectives, new ideas to the team/company? You probably don’t look for your clones to work with, right?

4) Trivia questions

Once I had an interview where I had to answer questions like what DRY or IDE stands for. In the same situation now I would just ask back: “is this really the knowledge I need to have to be successful in your environment?”. Questions which can be found the asnwers for with a couple of seconds of googling won’t help you get to know the candidate better. In the field of IT experience and mindset is much more important than lexical knowledge.

5) Not having ownership about the process

In spite of the common belief it’s the interviewers’ job to find enough information to be able to properly assess the candidate’s skills and potentials. If at the end of … Continue reading

Python timeit – when speed matters – SQL IN query with cursor.execute

Although there are always multiple ways to solve a single problem not always the most elegant is the best performant. Python gives a perfect tool to check primitives (or even a bit more complex) structure’s speed. This comes really handy when trying to figure out of a loop or a … Continue reading

Postgresql full text search vs Solr

Postgresql has really come a long way from being the standard but relatively slow database to the feature rich and extremely fast database what it is today. Supporting unstructured data (HSTORE, JSON[B]), geo function (PostGIS), full text search  (TSVECTOR) it is representing a true competition to the search engines.

Looking … Continue reading

Backbone with Tastypie – pagination, server-side filtering and sorting

I’m a big fan of Tastypie. It gives the ability to quickly set up a restful api and focus on real development work rather than typing code all night long. So the choice was obvious when I needed REST backend for my Backbone based frontend that I’m going to use … Continue reading

‘RelatedFieldWidgetWrapper’ object has no attribute ‘decompress’

I just stumbled across a weird issue after upgrading to Django 1.6 from 1.5. The regression tests didn’t show any errors (you may say now that my regression tests weren’t covering everything, indeed they weren’t 🙂 ). I was just about to continue working on a feature I wanted when my admin site started to … Continue reading

Stream cypher (encrypt) with digital envelope in Python

Generating. storing and keeping inventory of hundreds of terabyte large database backups is a challenge by itself which we do on daily basis. It’s even a bigger challenge to store them encrypted which is the requirement sometimes. The backup data is being pushed through a socket generated by percona-xtrabackup. On … Continue reading