Ed Jamal
 
Software Engineer - Facebook
 

Ex-Software Engineer @ Facebook, Intuit, Expedia.

& Co-founder of Yoga Panda, Codoc, and Vlographer.

 

Check out my recent projects

  • Swift Board: Brainstorming and sprint retrospectives collaborative tool
  • Codac: In-code documentation solution

 

Recent Blog Posts

 

React development and design patterns guide

A collection of open-source documentation to understand advanced React design patterns using practical examples. These concepts are essential for building scalable and easy to maintain React applications. read more

An honest introspection of a tech startup founder after shutting down his company

By my co-founder, Othmane Rahmouni.

I am writing this for all of you out there who are thinking about launching your own startup and wondering what it is like — I hope some of you will find it useful and that you will learn a thing or two from our mistakes. read more

Startups guide to software scalability

To build a successful startup, you need to be resourceful and adapt quickly to changing conditions. These extreme requirements put on the software teams make scalability even more important and challenging than in slowly changing businesses. read more

 

Work Experience

 
facebook-icon.png

Facebook - Senior Software Engineer

I build systems to solve enterprise/business problems at Facebook, for example:

▫︎ A system to handle corporate events management worldwide.

▫︎ A system to manage legal contracts at FB.

▫︎ A system to manage FB’s buildings.

▫︎ A safety and security system for FB campuses.

▫︎ A visitors management system for our FB offices.


Spotify-Lyrics-app.png

Spotify Lyrics App - Maker

A lyrics desktop app that integrates with Spotify.

Problem: I was frustrated  after Spotify decided to remove their lyrics feature from their app.

Solution: I decided to build my own lyrics app. Two days before launching, Musixmatch launched the same product. I lost the battle, but at least Musixmatch's CEO, Max Ciociola, gave me a shout-out on Twitter...


Yoga-App.png

Yoga Panda - Co-Founder/CTO

Yoga Panda is a marketplace for Yoga classes and events with dynamic pricing.

• Architected and built a backend RESTful API to handle classes search, pricing, booking, payments using PHP, Node.js, MySQL, and AWS.

• Implemented a front-end responsive web application to search and book Yoga classes and handle payments using Angular.js, JS, HTML, and CSS.

• Integrated our backend system with Mindbody (a 3rd party POS system used by Yoga studios to handle class booking), and Stripe (a payment gateway).

• Implemented a pricing algorithm to dynamically price classes based on historical data.


youtube-channel-finder.png

Vlographer - Co-Founder

A tool to easily find new Youtube channels/vlogs based on your interests. 

Problem: Youtube is full of cats videos and there is no way to find vlogs that I'm interested into on Youtube.

Solution: I built a crawler to go through millions of Youtube channels, wrote a couple of scripts to weed out none active channels, none vloggers, and assigned each a channel a category based on tags, description, and their relationship to other channels. Then built a tool to allow users to search channels based on categories, and a tool to suggest them new channels based on their subscriptions and likes.


Expedia-Software-Engineer.png

Expedia - Software Engineer II

•  Implemented front-end features for Expedia’s car rentals page to increase customer conversion rate and optimize the user experience using JS, React, Ember and Less for the front-end.

• Extended the capabilities of Expedia’s homepage search forms by introducing the search bundling feature which now allows users to get a single rate for all their trip needs instead of doing separate search.

•  Improved the accuracy of cars rental search results algorithm to provide more result options to users without increasing search latency. Most of this was on the backend side, which is written in Java Spring.

•  Wrote unit tests and documentations for system designs and onboarding new hires.  


Kinect.png

Smart Walls - Maker

Turning walls into touch smart screens using a 3D camera (Kinect).

Problem: I had a projector in my room and I thought it would be cool if I can use the wall as a touch screen instead of just displaying videos.

Solution: I utilized an open source project and modified it to build a couple of apps to add touch interactivity to projection. Here is a video of me turning my microwave oven into a smart screen.