Interview with Laura Thomson

      Comments Off on Interview with Laura Thomson

One of the great perks of my job is that I get to sit down with people and talk about PH

I’ll talk to just about anyone about how they are using PHP, what problems they have solved using PHP, or just about anything PHP related. However, most of you don’t care how my aunt implemented a PHP based photo gallery for the family so I’ll stick to publishing the interviews I think you will find interesting. Here is one of those interesting interviews.

While at OSCON, I had the privilege of talking with Laura Thomson. Laura is the Director of Web Development at OmniTI. Together with husband Luke, she has written 2 books for SAMS publishing on PHP; “PHP and MySQL Web Development” (currently 3/e) and “MySQL Tutorial”. She joined the OmniTI team in August of 2005 and moved to the United States in January of 2006.

She was kind enough to sit down with me and talk about PHP, OmniTI and other interesting topics. Here’s what she had to say.

How did you get into programming and why did you choose PHP?
Let’s see, I dropped out of high school and became a programmer in 1989. In the previous recession, which was in 1991, I got laid off so I went back to college and got a CS degree and a computer engineering degree and the rest is history. The PHP thing is actually quite interesting. My husband, Luke Welling, and I were working on a project for online legal services. It was the first big thing we did in PHP and for it’s time, quite groundbreaking. We actually start the project in Perl. One day we were talking with the system administrator for the ISP and he said, “You should really write this in PHP, I like it.” Since then we’ve never looked back.

Ok, so what brought you to OmniTI?
I’d been coming to OSCON since 2000 I think. I knew George Schlossonangle from the PHP community and Wez and Theo also. George had been saying “Come work for me” for some time and I kept telling him “No” because I didn’t want to leave Australia. At one particular point I did start looking around for work and I got another email from George saying “When are you going come work for us?” and again I replied “No” because I didn’t want to move to the US. Eventually he wore me down and so I agreed to come as a contractor for 3 months. So he said “Why don’t you come as a contractor for 3 months but then you can telecommute from Australia.” So I said “Yea, that sounds great”. I came over here on the 30th of January and I really liked it. Omni the best job I’ve ever had. I now live here in Maryland where OmniTI is based.

OmniTI is a multi-faceted company and I know there are a lot of interesting projects going on at any given time. What exciting project are you working on at OmniTI right now that you can tell us about?
Well, I work on a lot of projects and they are all really exciting to me. That’s why I’m staying in the US and why I like this job. One project, an internal project, on which we are working, is the web interface for ‘Message Systems’, formerly known as OmniTI’s Ecelerity, a high performance MTA. Another new product is a mail campaign manager called PostalEngine.

When OmniTI works with a client to develop their web properties, do you do much of the new “Web 2.0” development or do you stick to more traditional Web 1.0 development?
Really, we do both. One project that we have worked on that is publicly known is We helped them by working with them to develop their API and building some AJAX pieces for them. So we have done quite a lot of work in that area.

Let’s talk about your role as a hiring manager for a bit. In your role as Director you have the opportunity to interview and hire PHP developers. How do you find good PHP talent?
Well, we have an advantage in attracting new talent in that we have a list of people already on staff that everybody has head of. Hiring good senior staff isn’t that difficult. It’s easy to know who the good senior people are. You can look at their code and see what their public persona is. You can get to know them and determine if they are a good person, if they are ethical, what their communications skills are and so on. It makes it easy. Junior staff members are much harder. I’ve recently hired four junior people that I’m really happy with so I think we are getting a lot better at it. I think the secret is to be really fussy about it. We also apply the philosophy that if someone is really good, even if they are not exactly what we are looking for, we hire them anyhow. For example, recently I was looking to hire a junior Perl developer. I ended up hiring 2 hiring 2 junior PHP developers and teaching them Perl. This has worked out really good for us and one of them learned Perl very quickly and is now teaching other people around the office. The goal for us is to hire good junior staff that will not stay junior forever. We want to hire people that will become the next senior staffer. That’s really challenging.

You said hiring junior staffers is more difficult for you and harder to find. How to you go about finding them?
I’ve found that advertising on the major job boards is worse than useless. Most all the people we have hired have been people who read our blogs. Recently, I posted on my blog about how difficult it was to find good people. Theo read my blog and wanted to help me so he “posted some guidelines”: people should follow when interviewing for a job at OmniTI. I can’t remember them exactly but they go something like this.

  • If you talk about scalability and don’t know what it is, I’ll beat you with a stick
  • If you mention the word frameworks I’ll beat you with a stick.

And he goes on like that. Another one he said was “If you don’t have a sense of humor, I’ll beat you with a stick; but only I will find it funny.”

And at the end of it he posted “I’m actually a really nice guy.”

One of the two junior developers we recently hired came from that posting. He wrote this incredibly clever email that addressed all of Theo’s points but in a very sarcastic manner. Things like

“I don’t know much about frameworks but I wrote 7 of my own.”

It was really, really funny and incredibly sarcastic so we had to bring him in for an interview. We gave him a really hard time in the interview and he stood up to it so we hired him.

Let’s move on to PHP in general. In your role at OmniTI, you get exposed to a lot of clients and projects; what company who is using PHP, really surprised you that they were using it.
I’d have to say none. It’s really part of the landscape these days. It’s normal. I’m really surprised when people *don’t* use it.

Interesting answer. Ok, moving on, what are you passionate about these days?
I’m really passionate about my job these days. OmniTI is just a really great place to be.

Is there one up and coming technology that really excites you?
I’m really interested in social trends in technology. I’m finishing up my doctorate. I’m really interested in privacy and the impact of technology on privacy and social constructs.

From a programming point of view I’m interested in OpenLaslo.

Finally, I can’t let you go without asking the question I’m asking everyone. “What is your favorite blog or website?”
The Daily WTF“. This sounds really terrible but it’s because it relates back to my talk later in the week, “Writing maintainable code”. I have a real bug-bear about people writing code that you read and think “What were you thinking? I’m surprised you can walk and breathe at the same time if you write code like this.”

Since it was obvious Laura had been reading the code I was working on recently, I decided that was a good place to end the interview.