The first computer program I wrote was back in 1992 when I was 10 years old. It was an analogue clock written in Logo. During high-school years I enjoyed spending my free time doing creative work with friends I created and recorded music, built 3D models and rendered animations, I ran BBSs, wrote management tools for them and wrote trojans to hack into others, I built and flew radio-controlled model airplanes (and later became an instructor), I developed a spaced repetition memorization tool in Prolog that helped me go through my SATs, a natural-language-processing tool that broke down English sentences and built a semantic network that you could query using natural language questions.


  • BSc. Physics and Math - Hebrew University
  • MSc. Electrical Engineering - Tel-Aviv university


Here are a few of the projects I worked on in recent years:

Blockchain customization

An open-source proof-of-stake blockchain was forked and customized according to the client’s needs. Several development teams with no prior experience with cryptocurrencies were developing application on top of the blockchain and were guided through the integration process. The new cryptocurrency successfully went through several thorough security and functionality audits.

Cryptocurrency exchange

A cryptocurrency exchange was developed, allowing to automatically and securely trade a custom cryptocurrency for Bitcoin and vice-versa.

Ethereum Token

An Ethereum token customized to the client’s needs. A smart contract for a trustless exchange of the token was also created.

Double-ratchet secure messaging system

Defining the requirements for the client’s secure messaging system, researching potential solutions, choosing, adapting and integrating a double-ratchet messaging protocol in the client’s application.

Accurate autonomous landing system for multicopters

Accurate autonomous landing is essential for fully-autonomous multicopters to fly without a man in-the-loop, land on a basestation, recharge and fly again. A computer-vision based algorithm was developed in order to identify a unique pattern on a ground basestation. The algorithm was developed to be very accurate, computationally efficient, run in real-time, and be height invariant. The algorithm was implemented using openCV on an embedded Linux board and allowed a multicopter to land in high positional and orientational accuracy.

Online marketplace

Developing a fully-featured two-sided (buyers and sellers) online marketplace. Sellers could create their profiles and offer their services on the platform. Buyers could search for sellers based on their location and specific needs, contact them through the platform, book and pay online and leave a review after the service was rendered. The system included a back-office admin interface for approving sellers, monitoring transactions, handling disputes and no-shows and performing payouts to the sellers.

The platform was developed using node.js, MongoDB, Elasticsearch, Angular and integrated with email, SMS and telephony systems. It was both desktop and mobile friendly.

SMS sending API

Developing an SMS sending platform with a friendly, usable and scalable API for a Kannel server. The platform was self-serve, and allowed a user to subscribe, put his credit-card details, send a single SMS or create an SMS marketing campaign. The platform included a back-office admin interface that allowed to monitor the activity and health of the system.

The platform was developed using node.js, MongoDB, angular.js and was used to send millions of SMS messages for various marketing campaigns.

Angular.js course

Developing and instructing a full-week angular.js course. The course was given several times to developers of the Pictet private bank and to front-end developers in Geneva, Switzerland.

Flash-cards based spaced-repetition tool for memorization

A user-friendly Facebook for app that allows to create and practice flash-cards. The app used the spaced repetition algorithm to optimize the learning curve of the user.

Real time Apache Kafka visualization

Visualizing real-time high-throughput data streams, aggregating statistics and providing real-time search. The tool was developed using node.js, angular.js, and Apache Kafka.

Need help with a project?

Please contact me at: