GE Healthcare
When I joined the GE CT department, the R&D team released a new version every 2 weeks. During these 2 weeks between the versions, the QA team could test manually only around 10% of the cases when they picked some random images and compared 2 versions visually side by side. The main purpose was to automate as much of the manual testing as possible. So I wrote 30-40 automation tools in different languages and frameworks which made the QA team’s lives much easier over the time. Some of the tools were: As a result, when I left the company, the QA team could test 100% of the cases using my tools set. More than that, they were getting all the results automatically by email in just 2 hours instead of 2 weeks.
Ekkli
Ekkli was a small startup where I was one of the Founders. We built a collaboration tool for decision making. Lets say, you want to buy a car and you need to choose between 3 or 5 models. But in order to make the right decision, you want to consult with 1 or 2 million people and base your decision on everyone’s inputs. More than that – you also want to have a decision in 2 days. That was one of the problems we tried to solve. In such problems it’s really hard to communicate in chats or any other communication methods because it will usually create very long threads in which it will be very difficult to operate. So we built a tool that allowed you to solve that kind of problem in just 1 screen – because 1 picture is worth a thousand words. On 1 screen you can easily see the status of the discussion, no matter how many people are involved and get to the conclusions in a few seconds. In order to do that we separated our product into 2 parts: It was a very warm and friendly startup. We were a group of 7 friends, we met for multiple overnight coding sessions at home, cafes, shared offices and had a really good time together. It was a really long time ago but I still remember those days with great pleasure.
Accept Software
The main product of the company was a framework for tracking any production lifecycle. When I joined the company, the QA team was very busy and the idea was to automate the most time consuming test routines. The product had different types of databases and multiple SDKs in different languages. So the most time consuming testing was about verifying that every SDK works correctly with every type of database. So I built a web tool for automating the process using Django (Python). The tool was able to get some code in different programming languages as input, convert it to some metacode and run it. After that the tool checked that the invoked APIs in the code gave the right result in the database. That way, using the tool, QA could run a matrix (of any SDKs and databases) of tests automatically. It saved a lot of time for the QA team, they could do more tests coverage and overall quality of the product increased. Later on, when I left the company I also gave consultancy to the new team on how to use and maintain the automation tool I built.
PeerTV
PeerTV developed set-top boxes for home internet TV. The company supplied both the boxes themselves and all the relevant firmware and software. I joined the company to develop the content management system. We were a team of 2 people and we built it using the Django (Python) framework. The system had multiple parts: We worked with many big TV content providers from different countries. And it was super interesting, since we customized both the software and the hardware with the customer’s theme. Many times, customers were coming to our offices and I was working with them directly to adjust our management system to their specific needs. Later on, when the system was solid enough, I taught a few junior guys Python and Django almost from scratch, so they will be able to maintain the system after my leave.
Healarium
Healarium was a startup company that developed a product that helped US company employees to improve their health. It’s all started following Obama’s Health Care Reforms and worked like that: Big US companies did some health insurance for their employees. The companies also took care of giving the employees individual programs for stopping smoking, losing weight, etc…. Then, the employees were competing and chatting with each other in order to reach their health improvement goals. And once they reached these goals, they got some prices from the company, like gift cards, for example. The employer on the other hand could reduce his health insurance payments for these employees so everyone was on the winning side. The platform was divided into 3 main parts: I joined the R&D team in the company and helped them to develop new features and solve the most sophisticated problems. As well, I helped integrate Agile procedures inside the team. We used Django (Python) on the backend side and Backbone (Javascript) on the frontend side.
Radvision
The company developed different kinds of solutions for video and audio communications. I joined a CTO who wanted to build a cloud solution for controlling incoming calls inside some institute or organization. For example, it could be a call center which defines its own rules for the incoming calls or a bank who wants to help their online customers while keeping a small support team as effective as possible. One of the customers was a prison that wanted to schedule incoming video calls for the prisoners for some limited amount of time. The CTO I worked with was an expert in all the relevant communication techniques and low level bits and bytes of all the video/audio codecs and protocols. But it was his first experience with cloud solutions. The product we built consisted of multiple different parts. On the one hand it had to include all the relevant components for the smooth connection of multiple call participants. On the other hand, it had to include all the customer’s logic for connecting these calls. In addition, we had to supply some SDK to the customer, so even non-technical people can use it in order to build their algorithms and be able to test them in a standalone sandbox environment. So eventually we came up with the following architecture:
Wizer
I joined a very talented founder at Wizer when she was at the very beginning of the way. The idea was to build a tool for Montessori schools where a teacher can track children’s progress effectively. The tool should be motivating enough for the kids so they would want to take it home and continue studying even after the school hours. As well, the tool should connect between the education content writers, publishers and the teachers. Along the way we went to multiple investors and accelerators, did a lot of pivots and developed multiple variations of the product. I built one of them using Meteor (Javascript). It allowed the teacher to build worksheets from education material found in different sources. Afterwards, the tool presented a one page view of the class progress to the teacher. He/She could track each children’s progress in real time and help the kids who were stuck on some exercises longer than needed. Since I was the only technical person in the company, it was a lot of work which was super interesting because every new pivot required new architecture and new developer tools and frameworks to be adopted in a short period of time.
Cyren
Cyren is a web security company which developed a wide range of solutions. I joined the web team which developed a flagship product of the company. The team included 2 frontend developers in Israel and 5 backend developers in Germany. They used Pyramid (Python) framework on the backend and vanilla Javascript on the frontend. The product included some complicated functionality which included GDPR restrictions, multiple cloud regions and environments as well as long syncs of large Active Directories. The management wasn’t satisfied with the product for multiple reasons and that’s why they hired me. I proposed to switch to Django (Python) on the backend and Marionette on the frontend and gradually rewrite the product. After getting the “green light”, we started rewriting the product from scratch by keeping the existing functionality. After just a few months of work we replaced the old system with the new one without letting the customers know, since all the functionality and the screens remained the same. At the end, we were 7 full stack developers in Israel and continued developing new features in a much shorter time frames.
Cronus
Cronus was a small and young security startup. It developed a system for creating networking maps and possible cyber attack flows. I helped the company in various ways:
Fornova
The company had various products in the area of Hotels financial data management. The development team lead contacted me since they need help with some internal python and Django projects. I helped them to choose the right architecture, to order the code in a manner that will be easy to maintain in the future and also helped with kicking off a few projects for internal tools. There were a few guys in the team that worked onsite and a few outsource guys. The team had different levels of python and Django knowledge so part of my job was also to do some knowledge alignment across the team. It was a relatively short period of time of setting up the right course for the team in multiple projects, so it can go on by themselves without me.