Candidature - Adolfo R. Brandes

'''Loic Dachary it would be great to embed the current cardstories in a django based web site. That would imply binding the cardstories accounts with the django accounts. The django login would need to work with either regular accounts created with the default auth system and facebook accounts authenticated using facebook connect.'''

Intro/background
* Can you describe yourself briefly? What did you work on so far ?

I'm a Renaissance Geek. New technologies fascinate me, and I have dabbled in many over the years, but nothing has more consistently attracted me than open source software. I firmly believe that the answers to all of humanity's problems lie in the sharing of information, and I feel lucky to be living during a time when, through the internet, that concept is finally coming alive.

Maybe because of this, I have only ever worked in companies that use (and occasionally contribute to) open source software. I started out writing web applications in PHP over a fully FLOSS stack (otherwise known as LAMP), but since then have used everything from C to Ruby, Emacs to Vi, and Asterisk to MythTV. Here's a short portfolio of stuff I was responsible for that can be seen online:

- http://www.instantvoice.net: Product showcase and online store written in Django, MySQL, and a dash of JQuery, from scratch. The hardest part was of course developing the product itself, and that involved a lot of C, Python, PHP, MySQL, Bash, RPM packaging, and general Linux knowledge. - http://www.tecontei.com.br: Celebrity news website, developed using LAMP. Led development from mockup to production. - http://www.bolsademulher.com.br: A 3-million-page-view-per-month content-driven website. Most of the code was inherited, but I was tasked with managing development of the version that is in use today. LAMP and memcached infrastructure. - http://classic-web.archive.org/web/20071012200134/http://chanskype.com/: Product showcase and online store written in Ruby on Rails. Designed and led development from scratch.

* Why are you looking at a new job? And why with Farsides?

Even though I already make a decent living using open source software, I would love to be able to do so in an open source *company*, i.e., writing code AND giving it back to the community. Furthermore, computer gaming is also a long-time passion of mine, so working with Farsides would be something of a dream job for me.

* Are you looking for a part time or a full time ? If part time, how many days or half days per week?

I'm looking for a full time job, but if for whatever reason a financial agreement can't be reached, I'd be interested in offering my services part time. In the latter case, I have something between 16 and 20 hours a week to offer. If nothing works out, though, I'm intrigued enough to hammer out a few bugs in true open-source style: for free! :)

* How much were you earning in your last job ?

I currently make R$7200,00 (about 3100,00 Euros) per month, after taxes.

* How much do you wish to earn at Farsides ?

If working full time from home (or the beach! :), I would be very much satisfied with making the same I do now. Which is to say, something around 3000 Euros per month after taxes.

* Are you currently a freelancer ?

I occasionally freelance on nights and weekends, but I do have a day job.

* Where do you live ?

I currently live in Rio de Janeiro, Brazil.

Technical
* What is the operating system you have the most experience with?

Even though I've used Windows for longer, I definitely have the most technical experience with Linux. In addition to having worked daily in a Ubuntu desktop for many years, most of my day-to-day tasks involve either programming for or maintaining Linux servers. And not only for work! I have a 24/7 Linux server at home which I mostly use as a router, file server, IP PBX and DVR, and also a Linux HTPC running MythTV, XBMC, and several games.

* What are your favorite development languages/frameworks?

Even though I've programmed in languages that range in style from C to Ruby, nowadays I'm a Python man. That is essentially for two reasons: 1) code that you write today is readable tomorrow (PEP 8), and 2) there is usually just one way to do something (PEP 20).

As far as frameworks go, it depends a lot on what you want to do. Rails-type frameworks are nice if you do a lot of the same thing (I like Django as a CMS, for example), but if your project is different or innovative in any way, you'll end up fighting the framework more than using it! Which is just another way of saying: use the best tool for the job.

? (if yes, please include a link)
 * Did you contribute to free software projects already (code or other)

Unfortunately, either due to company restrictions or lack of time, I have contributed much less code than I would have liked to. That doesn't mean I didn't help out when I could (especially when scratching my own itches).

Code contributions:

- http://code.mythtv.org/trac/ticket/2439: a couple of patches to fix SAP in MythTV. - http://lists.digium.com/pipermail/asterisk-users/2006-April/149133.html: backported fax functionality to a previous version of Asterisk. - http://lists.mkgnu.net/pipermail/scmbug-users/2006-May/000273.html: autolinkification patch for Scmbug (Bugzilla-svn integration). - http://lists.digium.com/pipermail/asterisk-dev/2006-June/021205.html: fixed R2 functionality from Brazilian users of Asterisk. - https://issues.asterisk.org/bug_view_advanced_page.php?bug_id=9123: submitted patches to fix agent functionality in Asterisk. - http://dev.deluge-torrent.org/wiki/UserGuide/InitScript/Ubuntu: a debian-style init script for the Deluge torrent daemon.

General community involvelment:

- http://www.mythtv.org/wiki/TVxb: wrote TVxb howto for MythTV. - http://lkml.org/lkml/2007/12/28/84: LKML thread which resulted in a patch (by Jiri Kosina) to support the Gyration remote in Linux. - http://ubuntuforums.org/showthread.php?p=10121859: Ubuntu howto thread for my current notebook.


 * What is your experience with the following:

- Object oriented development: Most of the code I write nowadays is completely object-oriented, either in Python (obviously), or PHP (not so obviously). - git: I do not have as much experience with git as with subversion, but I certainly know when, where, and why it is better, i.e., changesets versus revisions, advantages for branching and merging, etc.   - Symfony: None (but I've heard it praised as a nice, easy-to-use PHP framework). - Facebook/social network APIs: None. - Unit tests: Very little pratical experience (although I know what they are). - Online communities: Plenty of experience. - Games: More experience than I would like: I'm an avid PC gamer. I especially enjoy CRPGs, multiplayer FPS games such as Battlefield 1942, and a dab of RTS. - SCRUM: I'm a Certified Scrum Master, and have so far implemented Scrum successfully in two different companies.