Tuesday, February 22, 2011

We're looking for a developer

With March coming, my effort at Allbus will be greatly reduced. I worked here as a software architect, initially in Siena and now by telecommuting from Como. I plan to remain in contact as an advisor via the internal mailing list, by I won't have time to pair program with my colleagues due to my projects at university and Alta Scuola Politecnica.
So why am I telling you this? Because Allbus is looking for a replacement to lead the development team.

What I've done everyday (what you'll do everyday)
Mainly, pair programming with one of the resident developers, and design activity.
These are the questions that the Allbus software architect faces:
  • in what layer or object should we put this logic?
  • what classes do we create to add this feature?
  • how do we test that?
  • is this design ok, or there is an underlying smell that should be solved?
  • what's Agile practice X and is it viable for us?
Both programming and teaching are part of the daily work. And by the way, we are more interested in knowledge of software design than about scaling and performances.
I think one of the interesting things about this job is that it is more focused on working on scalable approach for the development process, instead of on putting hacks in just to make a new feature work. The question to answer is always How can we reliably handle this case in 20 different places inside the application, and sleep at night knowing that we could maintain it for 5 years? and not What is the the shortest and most convoluted code that will work for this particular functionality?

Michele (first from right), is our enlightened boss. He favors clean code over technical debt, and the whole fact that he knows what these two terms mean should already tell you something. He knows how to read code, but its role is more of the Domain Expert of the project.
Francesco (first from left), Gianluca (third) and Elisabetta (missing in the photograph) are PHP and JavaScript developers. What I have done up to this day is to pair program with one of them all the time, which we think is one of the best ways to teach design and coding skills.
And I'm that guy with the light blue t-shirt. :)

 Technologies and enviroment you will work with
  • PHP application, currently developed with Zend Framework and Doctrine 2.
  • PHPUnit (and recently Behat) for testing
  • Currently transitioning from plain old PHP to Domain-Driven Design approach. Everything is object-oriented.
The team is mainly Italian, but all the application's code and interface is in English.
Your expertise is needed on the server-side, as the company is already well-covered with JavaScript expertise.

  • The job is about telecommuting for pair programming and analysis/design sessions with the team (usually with one or two people at the time). No relocation is needed.
  • There is the opportunity to set up a flexible schedule during each week. The time required is from 12 to 20 weekly hours (the amount of time will be established at the start of the contract).
  • Medium/long term contract.
  • You'll have the responsibilities of a software designer and developer, and of a teacher for the rest of the team.
  • Communication will be in English or Italian, according to your language, but knowledge of Italian language is preferred.
In case you're interested, contact us to get to know more about this position, or for an interview.
Write to team@allbus.com
Phone to +39 0577 208024 (9-13, 14-18 CET). +39 is the international prefix for Italy if you call from abroad.

Maybe we'll work together in the future. :)

No comments: