Since 2006, I have been offering technical consulting services. Specialized in PHP and more generally web programming, I have been called to resolve complex issues, plan and bootstrap system architectures or simply write code to get projects further along. My goal is always to write maintainable code that will live on when I move on to different projects and finding the right balance between cost and efficiency.
With a diverse background in software engineering, supplemented by extensive reading, I do not follow any Methodology religiously. Every project and environment is different and can benefit from a limited set of practices to improve overall quality and development dynamics.
However, there are a few practices I believe are fundamental to building systems that will evolve over multiple years.
- Version control, using centralized or distributed tools
- Refactoring, to improve existing code and preventing degradation
- Unit testing, to reduce maintenance burden
Open source has brought a very wide variety of tools that can be used to resolve common issues in software development. To make better use of those components, the system must be designed or refactored to accommodate the communication. To facilitate integration of external components and responsiveness to changing business needs, basic principles must be followed:
- Separation of concerns and responsibilities through concise interfaces
- Clear definition of priorities on quality attributes to determine the trade-offs in technology selection
- Maintained data invariants to preserve consistency
My personal toolbox includes PHP, MySQL, Sphinx Search, Gearman, Memcached, Zend Framework, eZ Components, jQuery and many others.
Need more information?
- Phone: +1 514-913-2245 (Montreal, Canada)
- Email: Click to view
- Citadel Rock Online Communities
- High Touch Communications
- ConMed Corporation
- Mozilla Corporation
- LIEBHERR Aerospace
- UQAM – École des sciences de la gestion
- Media Principia
Over the years, I had a few speaking opportunities in various conferences. However, this is ranked closer to a hobby and a reason to attend multiple conferences per year.
- ZendCon 2006 (San José), presenting about software estimation
- PHP Quebec Conference 2007-2010 (Montreal), presenting about software estimation, version control, unit testing and refactoring
- WikiSym 2008 (Porto), presenting about collaborative translation
- CodeWorks 2008 (Atlanta), presenting about collaborative translation