The Short version
am was a full time user experience consultant, helping companies design great products by integrating design thinking and agile UX, and working part full time on a couple of very exciting projects.
Prior to that, I was a program manager, an HCI researcher, and a software engineer.
I was born in Egypt, and moved to the US in 2001 to pursue the AmirCan dream.
I’ve been fascinated by design since childhood. I used to do what every child excels at: breaking things apart. But I also liked fixing what I broke, and building new things out of broken pieces. Since I was natural at drawing at early age, I found it easy to sketch notes as I took something apart to know how to put it together later. By sketching various components and examining them, I learned patterns that I used later to build my own toys and furniture pieces by mashing up existing pieces. I was curious about creating more functional toys that serve a purpose rather than just entertain.
During my early school days, I focused more on art as I became fascinated by drawing, perspective, shading, lighting and color. I became addicted to the versatility of the pencil: how such basic tool can create an endless variation of lines and shapes by manipulating simple parameters like pressure and tilt angle. I was fascinated by how art creates gaps that the mind fills in through each person’s own and unique experience.
I learned a lot by tracing and copying existing artwork and pictures. I copied too many styles that I ended up with a large vocabulary of drawing patterns that I combined to create many original art pieces, and ended up participating in group and solo exhibits.
My First Computer
My adventures with computers started when I was nine, when my parents bought me a Texas TI-99/4A. I remember copying the Basic instructions from the manual and hitting the run button to see a silhouette of a man shaking his arms and legs in an endless loop… There are some defining moments in each person’s life where we know exactly what we want to do. That was one of them for me, and I never stopped programming since then.
Few years later, I walked into an exhibit floor and saw what caused the next transformation in my life: one of the computer monitors showed a demo by Silicon Graphics: a 3D music video of “Stand By Me”. I stood in awe watching it over and over. More than half an hour passed before I realized that I’ve watched it over a dozen times. With no chance to afford a Silicon Graphics machine, I was still determined to learn how to recreate what I just saw. So I picked up a copy of 3DSMax 4 and started playing with the interface. I started modeling and animating objects and characters from my life, and later on started to imagine and create my own characters.
From Hobby to Degree
Until then, my fascination with computers has been just an expensive hobby. I’d written numerous programs and small games, mastered dozens of software packages, and created cool characters and animations. However, I didn’t want my fascination with computers to end with college; I knew there is nothing else I’d rather be doing, and I joined the computer science department to do it full time.
Computers have always been for me a tool to make better and more functional art, so I focused mostly on software engineering and front-end systems. I dove into 2D and 3D APIs and wrote a couple of rendering engines from scratch. Even though I enjoyed the work so much, I found frustration in the time gap that separated writing lines of code and getting a visual response on the screen. I wanted art that’s immediate, experimental and iterative, not postponed. For me, It was like making a brushstroke on a canvas and waiting few minutes before that stroke showed up… Art was about seizing moments, and during those delays I would lose those moments.
I had a lot of fun in college because I was working on things I really liked and cared about. I didn’t envy my friends in med school who had to memorize hundreds of body parts, diseases and viruses. Even though programming syntax was equally complex, I’ve always looked at it as Lego bricks of different shapes and colors waiting to be assembled in a new way to create a unique functional object. It was that aspect of creation that I couldn’t find anywhere else.
I received my Computer Science degree in 1999 and was offered a teaching scholarship, but I was determined to learn a different skill: how to ship software products. So I joined a software firm in Egypt where I worked on designing and writing software for Adobe, Corel and Microsoft. I created web applications, games, design tools, and graphics plug-ins (some of which still ship with Adobe Creative Suite). After shipping few products, boredom found its way to me and I wanted to learn something new; I’ve been fascinated with graphical user interfaces, but I didn’t want to be a graphics designer. Being part of product lifecycles made me realize that designers didn’t call the shots. I wanted to learn higher level design skills beyond pushing pixels: skills that deal with human psychology and perception. So I applied for and received a scholarship to the University of Maryland and joined the Human Computer Interaction Lab. And in 2001, I left my job as a software engineer to start working on my Master’s degree.
Human Computer Interaction
HCIL is where all my skills and experience were put to good use: art, science, engineering and design. For more than three years, I enjoyed working on usability, cognitive psychology, design, information visualization and human factors. We were encouraged to “design by building” and I built and tested various tools and interfaces. That’s where I learned that designers don’t just design. They interact, build, test, measure, and ship. And I worked among some of the best researchers and interaction designers who taught me how to Think like a designer, build like an engineer, and test like a scientist.
One of the projects that I’ve worked on, which aimed at improving source code comprehension, was funded by Microsoft Research. As a result, I was invited for an internship at Microsoft Research. The internship was challenging because I wasn’t given any specific task. I was working with the VIBE team and I was given 12 weeks to “create something good!”. I spent a couple of weeks brainstorming and prioritizing ideas, but none of them were promising enough. VIBE was another place where I was lucky to work among some of the top names in user experience and information visualization. I remember my supervisor giving me an advice that made the biggest difference and that I follow to this day. “Go out and talk to people”, he said. And that’s exactly what I did! For two weeks, I interviewed dozens of developers and brainstormed with them about the tools and workflows they use. I asked them open ended questions and watched them use their tools in their own environment. By interviewing junior developers and senior architects, I received enough insights to launch a small project at MSR that grew over the years to include many researchers and produce original results in the domain of program comprehension (the break-through idea was to use a social-recommendation system inside development environments and visualize editing and debugging histories to help novice developers understand existing source code much faster). This experience taught me how collective user creativity can produce more innovation than that of a lone genius.
Later that year, I received an offer to join Microsoft. The product and team members were so fascinating that I didn’t think twice about accepting the offer. So I became a program manager, working on the user interface for Microsoft Expression; a suite of design tools to rival Adobe Creative Suite. Working as a PM was probably the missing link that completed the chain of skills I’ve been looking for. And for four years, I worked with marketing, business, development, testing and third party vendors to ship the first version of the product. I designed features, wrote specs, prototyped interactions, managed schedules and performed triage.
User Experience Designer
When the first version of Expression shipped, I knew I was ready for my next step: I wanted to ship products much faster and work on a role that enable me to integrate everything I’ve learned so far: Program management, design, engineering, art, usability and research. After escaping death in 2006, I left Microsoft without a plan for my next step. I knew that I had some unique value to offer, and I believed that some companies out there might be able to benefit from it. I also knew that, to ship quick products I needed to work with startups rather than larger companies. The following years proved my theory, as I started working with several startups in Seattle as a user experience designer. I found great satisfaction in designing features that shipped within weeks and felt enormous gratitude working with founders and CEOs who believed enough in me to hand off to me their complete design process.
The Design-Driven Startups
The value I provided helped change the way these founders thought about the role of designers and the design process: they realized UX designers aren’t pixel pushers who transform requirements into Photoshop files, they are T-Shaped lateral thinkers who integrate creative and analytics thinking into the product lifecycle and acted as facilitators, inquisitors and user advocates. It was the repeated feedback from my clients that made me realize that by combining creative and analytical thinking with the experience of shipping multiple products, is what they found extremely useful in a designer.
As I started working with more startups in Seattle and the Bay Area, I observed what make ones more design-driven than others. I asked questions, took notes, analyzed findings, and started thinking about how to combine various patterns and best practices to help companies integrate design thinking and create design-driven products and cultures.
I also started simplifying my design process by successively eliminating steps and outputs that didn’t add much value to the final outcome. I eliminated documentation and specs, and relied more on creating agile design environments that relied mostly on open communication. I also eliminated wireframes by providing hand drawn sketches that provide incremental levels of detail with each iteration. Finally, I started eliminating the number of design iterations by getting together regularly with my clients and dedicate full days to do collaborative participatory design that I called “Deep Dive Design“. With every new project, there were new process improvements. Quicker iterations and higher quality are achieved by focusing on what matters and ignoring everything else.
In 2008, I led a discussion at Web 2.0 Expo about design thinking for startups, providing background and best practices on how to become design-driven. I was happily surprised with the overwhelming positive response, and I started thinking that I can provide valuable insights to those who want to innovate on a shoestring budget. I believe that all my previous experiences will enable me to distill, curate and present inspirations and insights to those who seek to launch and run a design driven startup.