Difference between revisions of "Resume"
From RonWareWiki
(19 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | __NOTOC__ | |
+ | <!-- vim: tw=0 ft=Wikipedia: | ||
+ | --> | ||
− | + | =Introduction= | |
− | + | Because it is no longer possible to put all my experience even on a double-sheet résumé, I have split it into two parts. First, a [[ron:resume.pdf|PDF-format overview]], presenting why you might be interested in my services, and giving a synopsis of my skills. Second, this page, which contains those details about my work experience and history which you expect of a résumé. | |
− | + | ||
− | + | Please feel free to [mailto:ron@ronware.org provide me feedback]. | |
− | |||
=Skills= | =Skills= | ||
− | Programming: | + | '''Programming:''' |
* Applications and systems programming in C, C++, Java, assembly language, Forth | * Applications and systems programming in C, C++, Java, assembly language, Forth | ||
+ | * Client/server product development | ||
* Database programming in SQL, Java, Perl and others | * Database programming in SQL, Java, Perl and others | ||
+ | * Extensive "open-source" knowledge | ||
+ | * Good knowledge of Linux (both operationally and application programming) | ||
+ | * Familiar with Symbian programming (native and MIDP) | ||
+ | * Many years of Microsoft Windows experience (from drivers up through UI work) | ||
* Secure coding techniques | * Secure coding techniques | ||
− | + | * Unix/Linux programming and tools (vim, perl, TeX, bash and many others) | |
− | * Unix/Linux tools (vim, perl, TeX, bash and many others | ||
− | |||
− | |||
− | Managerial: | + | '''Managerial:''' |
* Led small programming groups | * Led small programming groups | ||
* Led international teams of developers | * Led international teams of developers | ||
* Coordinated international customer requirements with development teams | * Coordinated international customer requirements with development teams | ||
− | Languages: | + | '''Languages:''' |
* native level English | * native level English | ||
* almost native level Hebrew | * almost native level Hebrew | ||
− | * good | + | * good conversational Spanish |
=Experience= | =Experience= | ||
Line 31: | Line 34: | ||
{| border="0" | {| border="0" | ||
+ | | 3/2009 - present || Hyperlync Multimedia (Jerusalem, Israel) | ||
+ | |- | ||
+ | | || ''Sr. Systems Engineer'' | ||
+ | |- | ||
+ | | || Designed and implemented comm protocol for PC/Android data exchange. Responsible for Linux port of core product. Added support for DLNA. Responsible for design, implementation and maintenance of production management system, as well as end-to-end multi-lingual installation and auto-update system. IT infrastructure. | ||
+ | C++,Java,bash,perl,PHP,wxWidgets, JSON. Windows, Mac OS/X, Linux, Android. | ||
+ | |- | ||
| 10/2007 - 3/2009 || ClassifEye, Ltd. (Jerusalem, Israel) | | 10/2007 - 3/2009 || ClassifEye, Ltd. (Jerusalem, Israel) | ||
|- | |- | ||
| || ''Manager, Customer Integration'' | | || ''Manager, Customer Integration'' | ||
|- | |- | ||
− | | || Drive multi-platform client-server product development from R&D through customer integration and deployment. Work with overseas customers to determine their needs, produce specifications and deliver them. Hire, train and mentor technical staff. | + | | || Drive multi-platform client-server product development from R&D through customer integration and deployment. Work with overseas customers to determine their needs, produce specifications and deliver them. Hire, train and mentor technical staff. Left because the company went bankrupt. |
Java, J2ME. Symbian C++, Nokia Series 60 platforms. SQL. JSON. XML. XML-RPC. | Java, J2ME. Symbian C++, Nokia Series 60 platforms. SQL. JSON. XML. XML-RPC. | ||
|- | |- | ||
− | | 4/2006 - 7/2007 || Motorola Corporation, (formerly Good Technologies) (Bellevue WA) | + | | 4/2006 - 7/2007 || Motorola Corporation, (formerly Good Technologies) (Bellevue, WA) |
|- | |- | ||
| || ''Principal Staff Software Engineer'' | | || ''Principal Staff Software Engineer'' | ||
|- | |- | ||
− | | || Working with the same development group as at Good and Sproqit, on similar projects (Good was purchased by Motorola in Jan 2007). Windows Mobile 5, Linux, PalmOS. Install/uninstall, cross-platform development issues. Design for mobile device applications. | + | | || Working with the same development group as at Good and Sproqit, on similar projects (Good was purchased by Motorola in Jan 2007). Windows Mobile 5, Linux, PalmOS. Install/uninstall, cross-platform development issues. Design for mobile device applications. Left to move to Israel. |
+ | C++ | ||
|- | |- | ||
− | | 1/2005 - 3/2006 || Sproqit Technologies (Bellevue WA) | + | | 1/2005 - 3/2006 || Sproqit Technologies (Bellevue, WA) |
|- | |- | ||
| || ''Sr. Software Developer'' | | || ''Sr. Software Developer'' | ||
|- | |- | ||
− | | || Client code developer for devices running WinCE, Palm and Linux operating systems. Reorganized the code base and build system so an SDK could be released to OEMs without exposing proprietary information. Wrote port of low-level code to a Linux-based device, including design and coding of a small database for the embedded device. Cross-platform build tools using ssh and make. | + | | || Client code developer for devices running WinCE, Palm and Linux operating systems. Reorganized the code base and build system so an SDK could be released to OEMs without exposing proprietary information. Wrote port of low-level code to a Linux-based device, including design and coding of a small database for the embedded device. Cross-platform build tools using ssh and make. Left because the company went bankrupt. |
Mostly C and C++ (gcc, VC, MetroWerks) | Mostly C and C++ (gcc, VC, MetroWerks) | ||
Line 71: | Line 82: | ||
==Life as a contractor== | ==Life as a contractor== | ||
− | From 9/1993 - 7/2001, was one of three founding partners of "Moss Bay Engineering", | + | From 9/1993 - 7/2001, was one of three founding partners of "Moss Bay Engineering", a software services contracting firm. The majority of our work was done for Microsoft Corporation. |
− | |||
− | done for Microsoft Corporation. | ||
Projects on which I worked included: | Projects on which I worked included: | ||
− | * Linux and Windows modules for high-availability software system. Design and implementation of perl-based accessors for OEM APIs. gcc, VC++. | + | * Linux and Windows modules for high-availability software system. Design and implementation of perl-based accessors for OEM APIs. gcc, VC++. Continued this work at GoAhead. |
* Secure instant communication program. Design and implementation of new UI. Added features to client and server portions. Researched Linux components. Delphi, gcc. | * Secure instant communication program. Design and implementation of new UI. Added features to client and server portions. Researched Linux components. Delphi, gcc. | ||
* MS NetDocs. Implementation of POP and SMTP protocols; SQL to MAPI translation layer. Lightweight system DLLs. VC++, MFC, COM, etc. | * MS NetDocs. Implementation of POP and SMTP protocols; SQL to MAPI translation layer. Lightweight system DLLs. VC++, MFC, COM, etc. | ||
Line 88: | Line 97: | ||
{| border="0" | {| border="0" | ||
− | | 12/2004 - present || Reva - a small, cross-platform Forth | + | | 1/2010 - present || Fossil SCM |
+ | |- | ||
+ | | || ''Contributing programmer'' | ||
+ | |- | ||
+ | | || In my search for "something much better than SVN", I came across "[http://www.fossil-scm.org/ Fossil]", written by the author of SQLite. I quickly became an enthusiast, and have been contributing features and fixes | ||
+ | C | ||
+ | |||
+ | |- | ||
+ | | 12/2004 - present || [http://dev.ronware.org/p/reva Reva] - a small, cross-platform Forth | ||
|- | |- | ||
| || ''Principal developer and project lead'' | | || ''Principal developer and project lead'' | ||
|- | |- | ||
| || A personal project which grew out of my search for small and fast development environments. Programmers and enthusiasts from around the world contribute to this rapidly developing product. | | || A personal project which grew out of my search for small and fast development environments. Programmers and enthusiasts from around the world contribute to this rapidly developing product. | ||
− | + | NASM, Forth | |
|- | |- | ||
Line 100: | Line 117: | ||
| || ''Contributing programmer'' | | || ''Contributing programmer'' | ||
|- | |- | ||
− | | || Ongoing contributor to the "vim" project - a "charity-ware", multi-platform programmer's editor. Work with developers across the globe on various parts of it: Windows port, GUI portions, I18N and UTF-8 work, many bug fixes and enhancements. | + | | || Ongoing contributor to the "vim" project - a "charity-ware", multi-platform programmer's editor. Work with developers across the globe on various parts of it: Windows port, GUI portions, I18N and UTF-8 work, many bug fixes and [http://dev.ronware.org/p/vim enhancements]. |
Visual C, Borland C, gcc. | Visual C, Borland C, gcc. | ||
Latest revision as of 20:32, 30 July 2011
Introduction
Because it is no longer possible to put all my experience even on a double-sheet résumé, I have split it into two parts. First, a PDF-format overview, presenting why you might be interested in my services, and giving a synopsis of my skills. Second, this page, which contains those details about my work experience and history which you expect of a résumé.
Please feel free to provide me feedback.
Skills
Programming:
- Applications and systems programming in C, C++, Java, assembly language, Forth
- Client/server product development
- Database programming in SQL, Java, Perl and others
- Extensive "open-source" knowledge
- Good knowledge of Linux (both operationally and application programming)
- Familiar with Symbian programming (native and MIDP)
- Many years of Microsoft Windows experience (from drivers up through UI work)
- Secure coding techniques
- Unix/Linux programming and tools (vim, perl, TeX, bash and many others)
Managerial:
- Led small programming groups
- Led international teams of developers
- Coordinated international customer requirements with development teams
Languages:
- native level English
- almost native level Hebrew
- good conversational Spanish
Experience
Most recent
3/2009 - present | Hyperlync Multimedia (Jerusalem, Israel) |
Sr. Systems Engineer | |
Designed and implemented comm protocol for PC/Android data exchange. Responsible for Linux port of core product. Added support for DLNA. Responsible for design, implementation and maintenance of production management system, as well as end-to-end multi-lingual installation and auto-update system. IT infrastructure.
C++,Java,bash,perl,PHP,wxWidgets, JSON. Windows, Mac OS/X, Linux, Android. | |
10/2007 - 3/2009 | ClassifEye, Ltd. (Jerusalem, Israel) |
Manager, Customer Integration | |
Drive multi-platform client-server product development from R&D through customer integration and deployment. Work with overseas customers to determine their needs, produce specifications and deliver them. Hire, train and mentor technical staff. Left because the company went bankrupt.
Java, J2ME. Symbian C++, Nokia Series 60 platforms. SQL. JSON. XML. XML-RPC. | |
4/2006 - 7/2007 | Motorola Corporation, (formerly Good Technologies) (Bellevue, WA) |
Principal Staff Software Engineer | |
Working with the same development group as at Good and Sproqit, on similar projects (Good was purchased by Motorola in Jan 2007). Windows Mobile 5, Linux, PalmOS. Install/uninstall, cross-platform development issues. Design for mobile device applications. Left to move to Israel.
C++ | |
1/2005 - 3/2006 | Sproqit Technologies (Bellevue, WA) |
Sr. Software Developer | |
Client code developer for devices running WinCE, Palm and Linux operating systems. Reorganized the code base and build system so an SDK could be released to OEMs without exposing proprietary information. Wrote port of low-level code to a Linux-based device, including design and coding of a small database for the embedded device. Cross-platform build tools using ssh and make. Left because the company went bankrupt.
Mostly C and C++ (gcc, VC, MetroWerks) | |
4/2002 - 12/2004 | Microsoft Corporation (Redmond, WA) |
Lead Software Development Engineer in Test | |
Led the team responsible for testing PTS (Page and Table Services) and LS (Line Services), which are core text layout components used by RichEdit, the Office suite of products as well as Vista. Coordinated testing effort for both products. Created new testing platforms and tools, upgraded and updated existing tools. Worked extensively with the developers, uncovering and remediation of both severe and non-critical defects as well as security issues in the products.
C++ and C, SQL, VBA, Python, perl etc. | |
7/2001 - 1/2002 | GoAhead Software (Bellevue, WA) |
Software Developer III | |
High availability software design and implementation in C++ and C. Used for monitoring telco equipment and ensuring the health of the system. Helped implement Linux and Windows framework for easy integration of the software by GoAhead’s clients.
gcc, VC++. |
Life as a contractor
From 9/1993 - 7/2001, was one of three founding partners of "Moss Bay Engineering", a software services contracting firm. The majority of our work was done for Microsoft Corporation.
Projects on which I worked included:
- Linux and Windows modules for high-availability software system. Design and implementation of perl-based accessors for OEM APIs. gcc, VC++. Continued this work at GoAhead.
- Secure instant communication program. Design and implementation of new UI. Added features to client and server portions. Researched Linux components. Delphi, gcc.
- MS NetDocs. Implementation of POP and SMTP protocols; SQL to MAPI translation layer. Lightweight system DLLs. VC++, MFC, COM, etc.
- MS Outlook, multiple versions over three years. I18N, mainly for FE locales. BiDi and multibyte programming. Date and time parsing and formatting. VC++, MFC, COM, etc.
- MS Direct-X SDK, initial version. Device drivers for high-speed video access, multi-player networked sample games. MASM, VC++.
- MS Windows NT internals, fixed and enhanced USER and GDI modules. C, MASM.
- Design and implementation of a compressing MSDOS disk-driver for a hand-held device. Use PCMCIA RAM card as compressed hard disk. TASM, Borland C.
- Slide-show style screen-saver for Win16 using custom image compressor and user supplied photographs. Borland C++.
Other experience
1/2010 - present | Fossil SCM |
Contributing programmer | |
In my search for "something much better than SVN", I came across "Fossil", written by the author of SQLite. I quickly became an enthusiast, and have been contributing features and fixes
C | |
12/2004 - present | Reva - a small, cross-platform Forth |
Principal developer and project lead | |
A personal project which grew out of my search for small and fast development environments. Programmers and enthusiasts from around the world contribute to this rapidly developing product.
NASM, Forth | |
9/1997 - present | VIM Development team (Internet) |
Contributing programmer | |
Ongoing contributor to the "vim" project - a "charity-ware", multi-platform programmer's editor. Work with developers across the globe on various parts of it: Windows port, GUI portions, I18N and UTF-8 work, many bug fixes and enhancements.
Visual C, Borland C, gcc. | |
9/2000 - 12/2006 | Congregation Beis Menachem (Bellevue, WA) |
Past president, Principal developer | |
Developed and supported custom-designed membership database for non-profit organization.
C++, Win32Forth, SQLite. |
Prior experience
9/1989 - 9/1993 | Traveling Software (Bothell, WA) |
Principal Engineer | |
Principal Engineer on Newton Connection for Windows product. Lead Engineer on Blackbird for Windows and Laplink for Slate. Responsible for Battery Watch Pro projects from proof-of-concept through design and implementation.
C, C++, MASM, TASM | |
10/1988 - 9/1989 | Softsel Computer Products (Inglewood, CA) |
Sr. Programmer/Analyst | |
Project lead, internal systems. Host-PC connectivity. Database and customer fulfillment applications programming.
C, Pascal, Btrieve, MASM. | |
5/1985 - 10/1988 | Mission Insurance Company (Los Angeles, CA) |
Sr. Technician, Specialty Areas | |
Worked for the Actuarial department; wrote data mining, consolidation and reconciliation programs.
Turbo Pascal | |
early 1980s | Israeli Defense Forces (Israel) |
Liason officer | |
Liason between army and reserve soldiers. Responsible for organizing training and related matters. |
Other
- Education: Technion, Israel - mathematics/physics
- Writing: Technical editor, "Vi IMproved - Vim" (New Riders). Also wrote various articles for "PC Techniques"
- References available upon request