Monthly Archives: March 2015

About the work I’ve done for New York Department of Education

Since people are keeping asking me about this, and since I myself often mention my work for the NYC DoE as one of the most successful projects in my professional life, I thought it would be a good idea to tell in more details about it, what it was all about, and why this project is so important for me.

In December 2003 I was a consultant working for the Spherion Consulting Group. My assignment at this time was a new HR/Payroll system in the City of Chicago Mayor’s Office. I’ve being working on this project for quite a while by that time. One of our the Spherion directors, Ed, who worked there in the beginning of my engagement left to lead another Spherion project in New York. A couple of times he would email me asking whether I have any ideas on how to optimize some queries…

Continue reading


Filed under Companies, Data management, People, SQL

I am featured in the Huffington Post

This interview was recorded in October, and I was told it will be published sometime in the beginning of January, so by mid-February I almost forgot about it. But here it is – in today’s Huffington Post Women in Business section.

I will be honest – am shamelessly proud of this publication, and I really hope that it will help me to promote my ideas at work, and to accomplish all these great and wonderful things I am dreaming about:)


Filed under news, People

What my co-workers are presenting

I’ve being asking some of my co-workers to post their optimization findings to this blog, but didn’t get any submissions yet. And since lots of people were asking me about “what exactly” we are presenting, I’ve decided to show one of the interesting cases myself, with a hope that people, who actually did this, will comment :).

Here is it.

The problem – original non-normalized schema:

This schema was normalized and now looks like this:

The task – to update each result with a correct set of failure details.
Continue reading

Leave a comment

Filed under Data management, SQL

What happens at the Hour of Optimization

I’ve being bragging about our “Hour of optimization” for a while, and now I want to talk about it in more details.

The original idea was that I will try to allocate some time for random optimizations: since people were coming to me with all sorts of optimization questions for a while, and a question could pop up in a chat at the most inconvenient time, like 5 PM on Friday, I’ve decided to have some “office hours”. This attempt was an epic fail, because literally nobody would come with their questions at that time, and everybody continued to bring me their questions at any other day/time of the week.

Then I’ve decided, since I already have this hour on my schedule, and since we’ve got so many newly hired database developers, to use this hour to show some optimization techniques, and how they can be applied for our tasks. This idea was definitely more productive, and I felt like people are learning something. On the other hand I knew that listening to the great optimization stories is not enough, that in order to master any optimization techniques you need to apply it at least ones.

So I’ve started to contemplate making other people talk at the Hour of optimization. First I’ve begun to approach those people about whom I knew for sure they performed some cool optimization task during the week. I’ve started to ask them to talk about these tasks – no formal presentation, just a conversation, and please show your code. After each of those presentations I’ve tried to initiate some exchange of opinions, some discussion: which technique was used, did we talk about it during my tuning classes, did we use it somewhere else recently? I liked it a lot when almost everybody started to participate. I’ve also started to invite people from other departments, since I’ve learned that many optimizations are going on all over the place ­čÖé

After some time I didn’t even need to know for sure that “somebody did something”. I was just asking: who would like to talk at the next Hour of optimization? Sometimes it’s even better: a developer may approach me and say: I have something for our optimization hour!

Yes, one can say that that’s a job of a database developer – to optimize queries. But I think it’s extremely important to reflect on your work, to think about the patterns you are using, to connect the current problems with the previous similar ones. Also, it gives the new database developers this feeling of almost visible growth of experience. We are definitely growing our database developers on the fertilized soil!

Leave a comment

Filed under SQL, Team and teamwork, Workplace

Netflix culture

This presentation is not at all new, but I was only recently I saw it – I was pointed at it by one of my former co-workers. I’ve watched it three times already, and can’t stop thinking about it.

I have very mixed feelings about the ideas expressed in this presentation. On one hand, when you read “we’re pro spot team, not a kid’s recreational team”, you can’t help but exclaim something like: finally! somebody is speaking the truth! On the other hand, even if you think you are smart, talented, you are the star – you can’t keep but wondering: who will judge, whether I am a true star? What if I have a tough moment? Am I really ready to have this level of job insecurity?

The questions continue with virtually every statement: yes, you would love to be paid “a fair market value”, but are you ready not to get a raise, if the market is being stale? You’d love to continue living without structure, when the company grows, but are you ready to be responsible for potential issues?

For me the most important controversy is, that I do not think I can ever stop caring for my co-workers. I feel about them like friends. Not that all my co-workers are my friends, but same way as I choose carefully and wait till I’m really certain I like this person and we share the same values, and only then you can say – you are my friend…. I feel the same about my the co-workers. We have a really in-deoth interview process, we grade applicants on the problem-solving and cultural fit… After all this I do not think you can easily let the person go…

Leave a comment

Filed under Companies

My company, new hires and the culture of learning

In course of the past six months we’ve hires six new database developers. Actually, we’ve hired seven, and the seventh person will start tomorrow.

On one hand, I am absolutely excited about that. I am excited, that finally we are going to have enough staff to do all this database work I was dreaming about, and didn’t dare to suggest, because I knew we didn’t have a bandwidth for it… But at the same time having that many new people presented certain challenges. Some of our new people were coming straight from college, some did have several years of industrial experience, but with different databases, not postgres. How you onboard that many new people? How you ensure they’ve got Enova culture? That they are not overwhelmed? How you set the realistic expectations?

I believe, one of the most important things is to help people to immerse into the culture of constant learning. Learning is not about just reading the books and finding stuff online, but most importantly – about asking questions, sharing you knowledge, learning from other people successes an failures.

I absolutely love how our weekly “Hour of optimization” has turned out. I love it that for the past several weeks it’s not just me presenting, but mostly our new database developers present their work. I love that everybody are involved in discussions.

Last week I started to think about making this blog a platform for sharing all database developers achievements. We’ll see how it goes! Don’t be surprised if you’ll see some posts in this blog, which are not written by me!

Leave a comment

Filed under Companies, People, Workplace

The statistics of inequality

A year ago, when I was getting ready to present my talk at the Moscow chapter of ACM/SIGMOD, I was a little bit panic-ing, since it was a totally new experience for me. In order to deal with this panic and to convince myself there is nothing scary about it, I decided┬áto watch a presentation of the talk given on the previous seminar. And after I watched it, I’ve started to panic even more.

You know why? Because a presentation was given by a guy, and after it is ended, all the questions asked from the audience came out in male voices. They never turned the camera around, so unfortunately I can’t tell, whether there were any women at all in the audience, but if there were some, they were silent.

When I’ve realized that, I decided to go over a complete list of all presentations given at the Russian chapter of the ACM/SIGMOD since the seminars started – in October 1991. I’ve counted all the presentations, and then counted all the presentations, where the speakers were female. ┬áThe results of my statistics gathering were crushing….

You may be wondering, why I am recalling this now, a year later? Well. Because last week the Moscow ACM/SIGMOD chapter had one more female presenter, and guess what – that was the first time since I’ve presented a year ago!

This being said, at this point the statistics look like this. Out of 175 total presentations given so far only 11 were presented by female speakers. And ironically out of those eleven five researches started their scientific career at the Database research group of the University of Saint Petersburg (including myself).

Now let me add something else. I’ve being asked, why I am bringing this subject again and again. After all, there is no real “rejection” process happening at this seminar. Well, I am bringing this up mostly for the sake of women in Computer Science themselves. How many times I’ve heard recently: “I do not like to speak in public”! A lot! Even from my younger co-workers, who should not have any of this baggage.

I really wish women would be more bold in volunteering to speak publicly, and I also wish that the organizers of such evens as the ACM/SIGMOD seminar would seek female speakers more actively. I am sure everybody will benefit from this.

Leave a comment

Filed under news, talks