Cool Summer Internship – Problem 1

Following the 4PSA Cool Summer Internships in Bucharest article, we publish today the first problem. We will have three problems and my feelings are that if you submit at least one correct solution, you will join our team. Of course, feel free to send solutions for all three problems we are going to publish.

We shall start with an architectural problem that targets mainly programmers, but it can also be solved by candidates applying for SQA or Security and Performance profiling positions. You have more than 48 hours to solve it!


You are working on an online photo catalog. The photo catalog is going to have several hundred billion objects. You know that:

  • Each photo has a description, and search tags (only single word tags supported).
  • Each photo can be liked/disliked by the community
  • On each photo users can comment
  • On each photo it is possible to tag objects inside the photo
  • You plan to extend the catalog with new functionality

What you have to do:

You must suggest an implementable architecture for this application. It must include data storage and object oriented design. It should not include the actual implementation of the classes. Everything must be properly abstracted and encapsulated.


  • Make sure that the photo lookup is O(1)
  • Make sure that the OO design follows the OO principles
  • Make sure that photos can be searched by tags
  • Address the Meta information storage for photos and related objects (do not even dream to keep the photos in a SQL database). Even if you do not identify a database able to store this, suggest the data structures that must be implemented by the database.
  • Address the binary data storage (do not store them in your local file system).

You will have to write everything in a document and send it to us. The document must be uploaded online here, before 7 May 2011, 24:00 EEST.

There are many solutions to this problem, try to be original and creative!


You can post comments in this post.

  • Really cool how the guys from 4PSA organized this 🙂 I sent by solution, I hope it will be accepted. Waiting for the next problems.

    Marius 9 years ago Reply

  • @Marius. Yes, much better than last year. I do not know whey they didn’t accept me last year, maybe because I was in 2 year?? I didn’t answer all questions on the test last year, but I think I did ok. Anyway I ended with an internship at Bitdefender and I better not describe the experience 🙁 Better take the vacation than go there.

    I will also send the solution today, I hope that this time they will accept me. I am very interested in cloud and this is the only internship I want.

    I also attended the company presentation last month at my university, 4PSA is cool!

    Sorina 9 years ago Reply

    • BD was still ok compared to Adobe. In my first year I was there and except that no-one in my team knew where we are heading, it was ok. With Adobe my experience can be described as: crap+crap+crap+corporate shit. Most people there were like brain-washed.

      Even though I am skeptical that this is different, I sent my solution.

      SuperGeek 9 years ago Reply

    • Can you send me an e-mail pls? I want to ask you something.

      Sorin 9 years ago Reply

  • Could you please give some short indications what an intern is going to do at 4PSA? I saw the details on stagiipebune, but I am interested in something informal. I am not alone, I am sure.


    Dorin 9 years ago Reply

  • […] you for sending the resolution for our first problem. Everyone who sent a solution rated more than 60% has been contacted and was scheduled for an […]

    Cool Summer Internship – Problem 2 | 4PSA Blog 9 years ago Reply

Post A Reply