I just use an a little ajax to break my company's portfolio into sections and then have each listing stored in a talbe in mysql. Then when a user chooses an area in the profile via ajax, the appropriate portfolio listings are displayed instantly. Very easy, takes seconds to add new portfolio entries. Since it uses a small plugin template class, the design part is a quick process.
Here is ours:
http://phpintheusa.com/portfolio.php
If you want something like this, let me know and I will hook you up.