A hands-on applied researcher with team lead, in-bound product management, software architecture, software engineering and software development experience. I've been doing research and developing algorithms and algorithmic software systems for over 13 years, mainly in Machine Learning, Statistical Inference, Natural Language Processing, Formal Language Processing, Compilation and Parsing, Text Processing and Web Application Security. I'm a Perl expert and a proficient C and Java programmer in addition to my experience in other programming languages. I'm mostly experienced in development in Unix and Linux environments using Open Source systems. I'm working in an organized manner and my deliverables are "on schedule" and are characterized by high quality, extensive documentation and thorough testing. I'm experienced in forming development teams from scratch into a synchronized unit that delivers high quality software deliverables.
An applied research position as a hands-on researcher, preferably, leading a team or a group of researchers and applied researchers.
| Computer Science Department, Haifa University, | M.Sc. in Computer Science, | 2002 - 2004 |
| Electrical Engineering Faculty, Technion, Israel Institute of Technology, | B.Sc in Computer and Software engineering, | 1996 - 2000. |
| Outbrain, Netaniya | October 2010 - today: | Senior software and algorithms developer and researcher. Development of software and algorithms in machine learning, search, optimization and personalization - from an idea to a working code. Development of highly-scalable, high performance, multithreaded, service-oriented software modules. Responsibility on software and algorithms modules. Agile development : fast development cycles. I'm working on algorithms for recommendation systems based on behavioral, contextual and personal features. My algorithmic and software design and development is scalable, maintainable, effective and efficient. I've been shifting into a Big Data Scientists position since November 2012 where I'm enabling data-driven decisions, Making sense of lots of data, and using Hadoop/Hive/MR/Cassandra/SQL, performing data parsing and cleaning using Perl, and doing modeling and visualization using R, Octave and PDL. |
| F5 Networks, Tel-Aviv | July 2008 - August 2010: | Architect. As an architect I work closely with architectural and development teams to ensure hardware, software, and product architectures are developed inline with the vision and future direction of the product lines and company. I manage assigned projects and work flow of engineers and serve as mentor to lower level engineers. I participate on cross-functional design projects, and consult to top management in long-range company planning concerning new or projected areas of technological research/advancement.
I research future directions and new technologies for F5's existing products and potential new products. During my work in F5 Networks I have submitted dozens of patent ideas, for which I have received several times a Patent Award. I also serve as a member of the company's patent committee. Several proposals of mine have been submitted to the U.S. Patent Office. Tasks that I'm involved in are characterized by being:
|
| F5 Networks, Tel-Aviv | March 2005 - July 2008: | Principal Software Engineer. As a principal software engineer I serve as a lead designer, responsible for the design, development and implementation of complete software components. I design, develop and maintain high-quality code for highly complex product components. I manage assigned projects and work flow of engineers and serve as mentor to other staff members. I participate on cross-functional design projects.
More specifically, I started with control plane integration of the TrafficShield web application firewall (now known as ASM) with the BIGIP TMOS mainly doing transactional database layering, databases synchronization and fault tolerance design and implementation. Then lead the Policy Building team (4 developers + 1-3 QA people) transforming the Policy Builder from a component with the largest amount of known bugs and problems to an operational key-component for F5's Application Security Module. Since September 2006 I serve as the technical lead of the ASM product. I devised efficient pattern matching algorithms, which led to an implementation of a time/space efficient pattern matching engine, which is used mainly by ASM's negative security system. Later, I lead an agile team (6 developers and 2 QA engineers) that develops high performance parsers and compilers, and am working on the design and implementation of flexible, scalable and efficient XML (and its satellite standards/protocols) processing tools. |
| Knowledge Center for Processing Hebrew, Haifa | April 2003 - December 2005: | Research Engineer. Developing standards for Linguistic knowledge representations for Natural Language Processing in Hebrew. Developed parsing tools, segmentation tools and morphological analysis tools for Hebrew text processing. Collection, organization and representation of Hebrew corpora annotated with linguistic information. Developing open source and free software for Hebrew text processing. Coordinating research and engineering efforts among research projects that are funded by the center. |
| Computational Linguistics Group (CLG), Haifa University. | October 2001 - February 2005: | Researcher. Research and development of supervised and unsupervised algorithms for learning morphology, mainly for Hebrew. Development of a Hebrew lexicon and Hebrew corpora to be used in the development of a morphological analyzer for Hebrew. |
| Phonetic Systems Ltd., Petach-Tikva. | September 2003 - December 2003: | Text Processing team leader. In this 4 months long project I formed the text processing team which is responsible for rapid annotation and representation of data for the consumption of an expert system that transforms raw databases into a format that is searchable by human voice queries. |
| Siftology Ltd., Haifa. | January 2000 - May 2002: | Software Engineer in the R&D group. Design and implementation of a search engine, mostly the reverse indexing, crawling and processing components. Design and implementation of Natural Language Processing algorithms for text segmentation, morphological analysis and automatic text summarization for languages such as Dutch, English, French, Japanese and Portuguese. |
| Distributed Systems Lab, Technion, Haifa. | February 1999 - December 1999: | Research Assistant. Design and implementation of a monitor for a distributed system, Symphony. |
I taught undergraduate students C programming for two years in Haifa university. I taught Perl programming for one semester in Haifa university and giving talks during the monthly meetings of the Israeli Perl Mongers for several years. In addition, I guided undergraduate students' projects (involving implementation of complex data structures, machine learning and development of testing and validation tools for linguistic data) in Haifa university and at the Technion. I educate developers, testers and professional services employees of F5 with new technologies. I am voluntarily teaching mathematics and mathematical thinking to kindergarten, elementary school and high school kids as well as occassional workshops for parents (how to help kids with their homework).
Fluent Hebrew and English and very basic Spanish, Turkish, Arabic and Japanese.
Available upon request