Internationalization and Localization World expert in the OpenType text rendering, Unicode standard, internationalization in software systems, bidirectional
writing systems, Arabic and Indic writing systems, and Persian language.
Programming Languages Wizard in C. Proficient in C++, Python, and bash. Familiar with Java and PHP.
Software Management Expert in software development and maintenance using GNU autotools (autoconf, automake, libtool), git, SVN, CVS,
and Bugzilla for Open Source libraries and applications.
Data Structures, Algorithms, and Graph Theory Excellent theoretical and practical background, as demonstrated in IOI competitions.
Operating Systems and Environments Expert in GNU/Linux and UNIX development and tools. A decade of GNOME, GNU, and Fedora involvement.
Work Experience
[2010–now] GoogleCanada. Staff Software Engineer. Responsibilities included maintaining and improving of international text rendering across Google’s
line of products, including ChromeOS, Chrome Linux, and Android. In this position I designed,
developed, tested, and integrated two libraries, HarfBuzz and GLyphy, into Google’s products to enable
best-of-industry internatiolized text rendering support.
[2006–2010] Red HatCanada. Software Engineer. Responsibilities included improving, implementing new features, and maintaining packages in the Linux
Desktop in Red Hat Enterprise Linux product and the Fedora project, including addressing customer
problems, working with the Open Source community including various parts of the GNOME project,
and handling internationalization (i18n) issues and coordinating with the i18n team.
[2000–2003] The FarsiWeb Project. Researcher and senior developer. The FarsiWeb Project is a research project working on internationalization and Persian localization of
computer systems. As part of this project, I contributed patches to various software projects, including
Mozilla, Qt, KDE, Glib, Pango, Gtk+, fontconfig, glibc, and the Unicode standard, and co-edited two
Iranian national standards on adopting Unicode for Persian computing.
[Summer–2003] Sharif FarsiWeb, Inc.Co-founder. Sharif FarsiWeb, Inc. is a company specialized in distributing and supporting Sharif Linux, consulting
technical and legal issues of Free/Open Source Software, and standardizing Persian language issues in
information technology in Iran.
Volunteer Work Experience
[2007–now] GNOME Foundation. Software maintainer and developer. Volunteer. The GNOME Foundation is a non-profit organization that works to further the goal of the
GNOME project: to create a computing platform for use by the general public that is completely free
software. The GNOME Foundation Board of Directors administers the GNOME Foundation. I served
as a director for the 2007..2009 calendar years. I also served as the president of the Foundation from
January 2008 to June 2009.
[2002–now] The Unicode Consortium. Contributing volunteer member of technical committee and bidirectional scripts subcommittee.
Software Development Projects
Mostly performed as volunteer unpaid work or as part of my job at the time.
[2011–now] GLyphy Text Rasterizer. Designer and developer. GLyphy is a revolutionary text rendering engine using OpenGL ES shader technology to render
high-quality text on the screen in realtime at every frame.
[2006–now] HarfBuzz Shaping Engine. Maintainer and lead developer. HarfBuzz is the only Free and Open Source OpenType text shaping engine used by Google Chrome,
Android, Firefox, GNOME, KDE, and others.
[2006–now] Cairo Graphics Library. Developer and Co-maintainer. Cairo is a 2D graphics library with support for multiple output devices. Responsibilities include bug
fixing, making releases, general maintenance, and working with a community of contributors.
[2005–now] Pango, Vte, Gucharmap, and Dasher. Developer and Co-maintainer. All are part of the GNOME project. Pango is a powerful modular Unicode text rendering engine.
Vte is a terminal emulation widget. Gucharmap is a Unicode character map application. Dasher is an
innovative predictive text input-method.
[2005–2006] preload. Developer and maintainer. preload is an adaptive readahead daemon for desktop systems. It predicts applications that users may
run and prefetches them from the disk for faster startup times. It was awarded a Google grant, and
developed for the Fedora Project. Base work for my Masters thesis.
[2004–now] GNU miscfiles. Co-maintainer (with Roozbeh Pournader). By appointment of Richard Stallman.
[2001–now] GNU FriBidi. Lead developer and maintainer. FriBidi is an Open Source implementation of The UnicodeBidirectional Algorithm (UAX#9), used in
AbiWord word processor and Pango text rendering engine, as a requirement to support Arabic and
Hebrew scripts. FriBidi is part of the GNU project, by appointment of Richard Stallman.
[2000–now] RiRa Persian Digital Library. Lead developer and maintainer. RiRa is a huge database of Persian poetry available to public. Designed and implemented using
PostgreSQL and PHP.
[1998–now] FarsiTEX Project. Developer and technical manager. FarsiTEX is a bilingual (Persian, English) typesetting system based on LATEX. Subject of my
BSc. final project.
[2003] Squash. Developer. Designed and implemented an HTTP gateway and masquerader for Ministry of Education of Iran,
enabling access from universities across the country to member-only online academic resources.
[2001–now] Teaching Assistant. More than ten appointments at University of Toronto St George and Scarborough campuses.
Responsibilities included: giving tutorials, designing and grading problem sets and finals. Mostly in the
area of software design and tools.