$Id: resume.xml 98 2011-01-17 01:40:42Z Mahdi $
Mahdi BEN HAMIDA
.
(use email)
mahdouch --at-- gmail dot com
Experience
Senior Software Engineer
VMware
USA
Palo Alto, California
Part of the core team who built VMware's vCloud Director product. Responsible for the multi-cell feature in the product. Led a team of 3 engineers to ensure product reliability, wrote scripts to push the product to its limits. Worked with other teams to address reliability concerns and to ensure resiliency to failures. Right now, I'm leading the performance and scalability team for the future version of vCD
better understanding of transactionality/failure/resiliency in the context of multi-backend systems, performance troubleshooting/improvements; team/project management, planning and execution
April 2010 - Present
Software Engineer II
VMware
USA
Palo Alto, California
Software design/implementation for VMware Cloud Services. Focused on multi-backend systems, stateless nodes and failover mechanisms
Java, Hibernate, Spring, JMS
January 2009 - March 2010
Software Engineer
VMware
USA
Palo Alto, California
Designed and built core components for VMware's Lab Manager and Stage Manager enterprise-class products; worked with VMware's vCenter virtualization APIs; implemented a build system for a C++ remote agent installed on ESX and ESXi hosts; investigated and solved resource leaks, performance issues; participated in architecture and design discussions, wrote software specifications, design and architecture documents
C#, .NET, ASP, Virtualization, vCenter, ESX/ESXi, C/C++, Scons, SQL, SOAP
January 2008 - December 2008
Software Engineer
Cataphora
USA
Redwood City, California
Led and participated in the developement of various java projects from project initiation through delivery. Worked on deployment/build automation; wrote shell/python scripts to automate some customer operations; set up customer web sites including installation, configuration and customization; worked with Client Services to ensure continuous availability of the application; and performed all necessary maintenance operations
Python, XML, Spring, Acegi, Javascript, SQL, Java, Tomcat, Cross-platform enterprise software
October 2006 - December 2007
Intern
Cataphora
USA
Redwood City, California
Designed and developed in Java new features in Cataphora's C-Evidence web application (pdf printing, graph generation, server monitoring), worked on test automation, wrote perl scripts to stress test web applications
Tomcat, Perl, Tom Sawyer API, Ant
January 2006 - June 2006
5 months
Intern
Sagem
France
Paris
Develped in C a CUPS driver (Linux) for a photo printer, developed in C++ a GUI application to monitor printer status (using WxWidgets), did packaging for linux distributions
CUPS, USB interface, PPD files, WxWidgets, Autotools, UML, RPM
Summer 2005
2 months
Intern
Oxone Technologies
France
Grenoble
Developed in PHP/MySQL a web and phone (SMS based) interface for classified ads, wrote an online address book management system for the company
Mobile-Computer connectivity
Summer 2004
2 months
Part time job
Garance
France
Grenoble
Ported a database from Microsoft Access to MySQL and ported the front-end application to a Web application(PHP/MySQL), leaded a team of three persons and provided delivrable on time
Team management (3 persons), Access/MySQL portability
2004
2 weeks
Part time job
Loc@giciel
Tunisia
Tunis
Customized and added new features to an existing open source e-commerce solution
PHP/MySQL, e-commerce
2002
1 month
Education
Master's Degree in Computer Science and Applied Mathematics
Clemson University/ENSIMAG(INPG)
USA
Clemson, SC
Exchange student at Clemson University. Graduate courses in operating systems (low level kernel programming), software development and specifications, software management.
2005-2006
Bachelor of Science
ENSIMAG(INPG)
France
Grenoble
Computer Science and Applied Mathematics
2003-2005
Intensive preparation in undergraduate level for competitive entrance exam to French prestigious Grandes Ecoles
IPEST
Tunisia
Tunis
2000-2003
Academic projects
Developed, in a team of four, a multitasking Operating System, used an FPGA card powered by a PowerPC Embedded core CPU, wrote in C and PowerPC Assembly most of the kernel internals (process scheduler, context switching, memory allocation)
PowerPC assembly, cross compilation (gcc), low level programming, multitasking internals, better understanding of the Linux kernel
2005
3 weeks
Developed, in a team of three, a compiler for a subset of the pascal language, wrote the lexical analyzer and helped with the development of the code generator module
Flex/Yacc tools, code generation, code optimization
2005
1 month
Developed an Assembler for x86 architectures, wrote the elf generation and code relocation module
ELF format, code generation, compilation theory
2004
2 weeks
Designed an 8 bits CPU with 16 bits addressing bus (based on a simple automaton), designed and optimized the instruction set
interruptions handling, design of a CPU on FPGA card, Xilinx modeling software, very good understanding of a primitif CPU internals
2004
4 months
Awards
Tunisian government scholarship. Merit based scholarship
2001-2006
Extra-professional activities
Treasurer of the Junior Entreprise association ($60 000 Income in 2005)
2004-2005
System administrator at the ENSIMAG GNU/Linux User group
VPN installation, user administration, Web administration, Security, helping with and promoting Linux
2004-2005
Skills and abilities
Math
strong mathematical background (statistics, probability, applied mathematics)
O.S
most flavours of Linux and some Unixes
Languages
Java, C/C++, Pascal, x86 Assembly, some PowerPC Assembly
Scripts
PHP, Perl, Shell Script, some Python
Networks
Very good knowledge of TCP/IP and network security
Others
Microsoft Access, Maple, Scilab, Matlab, R, CVS/SubVersion/Perforce/Git, LaTeX
OSS Projects
Developer and maintainer of SpamClear : a Bayesian spam filter plugin for dotclear (a french open source blog engine). Plugin written in PHP and using an Ajax UI
Languages
tri-lingual Arabic, English, French
German: basic level
Spanish: beginner
Interests and leisure activities
Arabic calligraphy, swimming, music (playing darbouka: an oriental drum instrument)