Showing posts with label industry. Show all posts
Showing posts with label industry. Show all posts

Sunday, February 01, 2009

Back Again

I have recently returned from a stint at Amazon.com in Seattle, where I was offered a software development position on the security team. During my time there, I was introduced to the Amazon.com infrastructure and their core values. There is a lot of reliance on who you know and what is known by the the people you know. This is more reliable than the available documentation. Most things focused on the bottom line. Errors measure it and motivation is driven by it. It's very different to the my other industry experience.

In terms of project, I was placed on what can be called a practical data mining project. It wasn't quite what I had expected. I performed hands on data warehouse queries that resulted in large volumes of data. Within the data, I was to find correlations. It was an interesting experience. I worked mostly by myself on this isolated project.

Tuesday, April 15, 2008

Another Internship?

My interviews over the past 6 months have landed me 2 internships. I have recently returned from my first where I had a fantastic time. During my internship, another offer was been made to me. This time, the temptation comes from Amazon.com in Seattle. I had a few interview screens before the offer came. The conversations were mostly technical but at the same time, I gained some insight into the functionalities and products Amazon offered. They don't only sell books. They are so much more! I was glad with the opportunity to work for such a well known and established company. I had worked with their Web services platform in the past but after my talks with various members of their different and diverse software development teams, I have decided I wish to work on their security and identity management team. This also ties in nicely with my current area of research. My last internship was in data mining and this one will be in security; perfect.

After this second offer, I withdrew my applications from the other companies that I had been in negotiations with. Two internships for a 3-4 year postgraduate research degree is quite sufficient, if not excessive according to Australian standards. I will have to put my research on hold again for another 3 months. I have set my start data at Amazon to the end of the year so I may have some time now to do some solid research. When I come back, I will tidy everything up and write everything up to create the final thesis.

Monday, April 07, 2008

Back to PhD

I have returned from my internship in Sydney and am now back to research. I had a fantastic time. I personally think I had the best project to work on out of all the other interns. It tied in perfectly with my data mining interest. There was a slight administrative hurdle that we never got over (just around) but I completed the project and was even able to produce a demo for my final presentation. This would not have happened without the help and support of my mentor and development team. It was a fantastic learning experience and I'm glad I had the opportunity to be involved on such a fun project with such a cool team. I was even offered supportive feedback after the project, which was helpful and sincere.

In terms of infrastructure, the code base was well documented and maintained, with high visibility within the company. It was easy to access tools and find assistance. The focus felt like it was on creating functional and innovative products, making the big G an enjoyable environment to work in.

However, even after this experience, I am still uncertain about the direction I wish to follow after my PhD. Both academia and industry are equally appealing. Luckily I still have a couple of years to decide. In the mean time, it is back to my PhD and my research topic. I'll take a while to get back into things but I'm sure I'll get there in the end. I'm currently looking at the code that I was working on 6 months ago. I'm glad I wrote comments but I am still more confused than anything else.

The toughest thing about being away from the research is coming back to realise the new and recent developments have made some of my work invalid. That's a shame. I guess the next step is to try and catch up with where the research area has progressed to and carry on from there. Time to do a lot of reading!

Monday, December 10, 2007

Internship

After my interview trials, I have become successful in at least one position: between December 2007 and March 2008, I will intern as a Software Engineer in Google, Sydney. During my time here, I will work on a project related to Google Maps. But still Data Mining related, which is where my interests lie.

The internship means I will be taking a break from my PhD. Instead of reading papers, I will be writing code. Instead of writing papers, I will be writing code. This will be a change indeed. The coding that I have done in the past have all been very standalone applications. Programming in the large has never been something I have been familiar with. I look forward to the opportunity to work on software that is part of a larger application.

Hopefully this experience will help me decide on what I would like to do after my PhD; would I like to remain in research or do I want to work in industry?

Internships are a big thing in the US. From what I hear, most PhD students work in companies over the summer. I'm not so sure about Australia though. There are some vacation work positions but are more limited in number than in the US.

I think internships are a great way to see what life can be like after university so students can make a more informed decision about their future when they finish their degree. Seeing the practical side of what is taught at university can ground understanding of fundamentals and enhance skill development in the future.

I look forward to the opportunity of working for one of the biggest and best companies in the world. Hopefully I won't eat too much while I am here. It is difficult to say no to free food, especially for a PhD student.

Sunday, November 18, 2007

Interview Questions

Over the past 12 months, I have done several face-to-face as well as phone interviews for industry based internships. As someone who loves interviews and interesting problems, most of the interviews were quite enjoyable. Admittedly I feel more relaxed during non-technical interviews but technical ones are still fun because they present an opportunity to be exposed to possibly challenging problems that you may not have encountered before. Or they may even be the same problem but in an entirely different context.

Anyway, in no way eluding to which companies interviewed me, the following were a few of the fun mind challenges I was faced with:

Battleships:
  • If you were implementing a battle ship game, what data structures would you use to store information about the grid, information about the ships, information on the scoring?
  • Initially think about a grid that's 20x20 with 12 ships of different sizes. How would implementation change if the grid is 1000x1000 or 100000x100000 with 12 ships of different sizes? Now consider the larger grids with 100 ships or more of different sizes?
  • How do you determine when a player has won the game? How should you keep track of the scoring? Make sure the other player can't cheat! For example, if a player hits a particular position that contained a part of a ship, continuously hitting (spamming) that position causes him to win. This could happen if you had a counter for the number of hits and didn't keep track of distinct battleship hits.
Reverse:
  • Given a string, reverse it.
  • Given a number, reverse it.
  • Given a byte, reverse it.
  • Can you do it in place?
  • Can you make it more efficient?
  • How can you test your functionality?
Latex:
  • My interviewer noticed I used latex to generate my resume. He asked how I felt about latex and what I found annoying. I mentioned that I noticed " and " did not turn out if I just typed " and ". To have quotations at the correct angles, `` and '' needed to be written. This problems comes from this. Given a tex file, go through and replace all the '' and '' with `` and '', assuming the text was well formed. That is, there are an even number of " in the text.
  • Can you do it in place and in O(n) where n is the number of characters in the text?
Division:
  • Do some division without the division operator.
  • Why is recursion suboptimal?
  • What would be more efficient?

Friday, June 22, 2007

SACMAT Keynote

20 June 2007 - Sophia Country Club, Sophia Antipolis, France

Keynote: Jorge Cuellar - Siemens Corporate Technology, Munich, Germany
Thoughts on Application Layer Access Control


In this keynote, Jorge presented some formal methods representation for the application layer of access control. He motivated the need for formal representation through various research initiatives currently in progress at Siemens, Germany:

  • eHealth Care - ensure confidentiality of patient records
  • Planes - distrusted software
  • Citizen's portal - card to authenticate, management of access to different software.

He also discussed the rational for the need for security using UML system diagrams.

eTransactions were also discussed. Current security for e-Transactions are not enough for eCommerce needs. SSL are currently not made for eTransactions. What kind of access control do we need? What ever is chosen, ease of implementation is an important consideration. The hidden logic needs to consider confidentiality, integrity and atomicity.

Monday, October 30, 2006

Meeting industry research leaders

While I was away at the The Grace Hopper Celebration of Women in Computing in San Diego, I received the opportunity to meet Gabby, our CA Lab head. I wasn’t too sure what to expect from this legendary research figure having never officially googled him. But from what I have heard of him from Tim, I expected a very brilliant man. Having become acquainted with our more local leader, Eugene, I somewhat expected a similar personality. Eugene’s presence demands military respect of the Russian variety with underlying tones of top secret weapon knowledge. Then he speaks and he somehow seems cuddly.

In relation to Eugene, Gabby is similar in that they are both of comparable height. This is where all physical resemblances end. After searching for Gabby with no luck for the first three quarters of the conference day one, I finally cornered him during Connie and Carrie’s presentation where Gabby was listening attentively in the front row. He was the only male in the room so I made a stab in the dark and guessed this was Gabby. It was pretty exciting, I was sitting in the same room as Gabby and I could see the back of his head.

After the presentation, I waited around to speak to the man himself and to Connie and Carrie as well. There were times when I just did not know what to say to Gabby but it was a nice experience to finally meet him. If you asked me what we had talked about, I would not be able to tell you. I was concentrating so hard that I don’t know what happened. We spoke for a total of three times throughout various times during the conference: once at the CA presentation session, once at dinner and once at the CA booth.

The CA member I became most familiar with while at the conference was Connie. I had given the opportunity to sit next to this pretty and intelligent individual after I was invited to eat at the CA table for the presentation dinner. My most memorable moment of Connie was when asked if she was vegetarian, she asked what the meal options were before responding. This is due to the fact that she was vegetarian but because Gabby made fun of her so much, she has slowly started to eat meat products. It also has to do with dietary intake but I find it amusing that Gabby has the ability to manage research facilities globally as well as convince long time vegetarians that chicken is tasty.

Both Gabby and Connie are coming to Australia early next year and I look forward to seeing both of them again. On conversation topics, I will be interested in CA research development and what other types of meat Connie is eating.

Thursday, September 14, 2006

PhD with a University and Industry

I commenced my PhD through The University of Melbourne in March this year. In July this year, my industry agreements came through and I am officially the first PhD student to be sponsored by CA Labs. The reason it took so long was because I was the first and there were lots of legal issues, like IP to sort through. The general agreement is that the work I do is still owned by the university, but CA have non-restricted rights to everything I do as well.

My current research aims to incorporate data mining for role based access control (RBAC). My supervisor is strong in his data mining knowledge and an expert in this field. Industry have some practical problems they hope to solve with data mining in the area of role extraction for RBAC. I have spent my first 4 months reading about general RBAC issues and have discovered the name of what I am trying to do is called Role Engineering.

My previous research was related to coordinated scan detection algorithms. I completed my honours last year in this area. I evaluated some existing scan detection algorithms and extended one anomaly detection algorithm to consider coordinated scans. The move to data mining for RBAC isn't a great jump. Previous I was working with data mining for network security, now I'm looking at data mining for enterprise security.