Ali Çehreli
Software Engineer
acehreli@yahoo.com - Mountain View, CA - http://acehreli.org
Skills
C++ Programming Language
D Programming Language
Employment
Riverbed, 2007/06 - present
Member Technical StaffMember in the device management framework development team of Steelhead, "the best WAN accelerator" award-winning product.
- C++ library API design and implementation
VMware, 2006/03 - 2007/05
Member of the Technical StaffMember in the VMware Converter application development team
VMware Converter is the newer version of former P2V application (physical-to-virtual), a tool to convert physical machines or other virtual machines to VMware virtual machines.
Implemented the job scheduler to manage the execution of asynchronous machine conversion jobs; utilized C++ Standard, Boost, and VMware internal libraries
Implemented the archiving of jobs as XML files; later implemented indexing of job properties through SQLite
Contributed to the graphical and command line interfaces of the Converter application as needed
Implemented job status message transfers from the back-end logic to the user interfaces
Contributed to the incorporation of the Converter functionality to VMware's Virtual Center product
Organized the hosting of the ACCU meetings at VMware and acted as the liason between the ACCU and VMware
PayPal, 2004/06 - 2006/03
Staff Software EngineerMember in the PayPal China team
Participated in the UTF-8 strings project
Worked on various China localization issues
Implemented the Chinese site signup and referral bonus programs
Worked on various parts of the development team from the back-end financial processes to the front-end web interfaces
NetContinuum, 2002/02 - 2004/06
Senior Software EngineerContributed to configuration agent of the company's NC-1000 application security gateway
Redesigned and implemented the statistics collection framework; optimized the execution speed and reduced development and maintenance efforts
Redesigned the XML messaging framework; improved the communication with the user interfaces
Abstracted the external representation of the configuration tree
Designed and implemented a simple and safe output stream wrapper; increased the speed of certain operations by a factor of ten
Designed and implemented a profiling class to optimize the configuration agent
Improved the quality and robustness of the software; refactored the source code
Removed memory leaks; used valgrind and constantly inspected the source code for potential mistakes
Acted as the in-house C++ expert
Presented formal and informal in-house C++ seminars
Introduced the use of modern C++ idioms, design patterns, and libraries
Increased the overall understanding of the safe and robust software practices
Improved the build environment
Automated target dependency generation in the make files
Tripled the build speed by introducing distcc
Inviscid Networks, 2001/04 - 2002/02
Inviscid Networks was a start-up company that was spun-off from Marconi, to complete the work on the next generation packet forwarding engines.
Lead Software Engineer
Principal designer of network processor verification software and network processor development tools
Lead contributor to architecture, design, and implementation of full suite of integrated network processor development tools
Contributor to the architecture of network processor ASICs
Developed run time libraries for table management and hardware abstraction layer for a family of network processors.
Designed and implemented an unlimited-width and platform independent bit-field class to represent the varying widths of hardware memory blocks, implemented patricia trie, hash table, and other data structures
Abstracted the hardware layer structures as logical operators and functional blocks of a graphical decision tree
Berkeley Networks (acquired by Fore), 1997/02 – 2001/04
Fore Systems (acquired by Marconi)
Marconi Communications
Senior Software Engineer
Contributed to the development of a family of application aware Ethernet switches – Exponent E4, E8, and E-Micro. Fundamental contributor from the earliest design stages throughout the entire product life cycle.
Identified optimization opportunities in the design of network processors and suggested improvements that were later implemented during successor chip developments.
Implemented low level protocols to communicate with line cards over both serial and ethernet ports. Developed tools for ASIC verification, manufacturing diagnostics, and fault isolation. The test methods and programs developed were leveraged from early phases of ASIC design and verification to the eventual deployment into 3rd party manufacturing process flows.
Developed a functional test program that simulated a TCP/IP network for the purpose of stressing and exercising routing and bridging protocol software running on a multi-Gigabit switch. The design incorporated one switch as the testing device and one switch as the device under test. The test program ran on a host attached to the switch acting as the testing device. Novel hardware multicast and queuing methods of the testing device were utilized to provide substantial traffic load beyond the capacity of the program host. The test apparatus was capable of providing traffic stimulus and verification of traffic on hundreds of ports of the device under test.
Lead developer of diagnostic stress tests utilizing avalanche traffic generation methods within the switch. Hardware multicast, COS queue scheduling and multiple programmable loop-back interfaces were used to advantage. The test program could automatically isolate faults to specific chips and interfaces within the system by dynamically adjusting the program parameters based upon incorrect returned packet data. Stimulus and verification data could be injected and returned at program controlled rates on a single link to enable simple test bench environments suitable for manufacturing.
ITA - Nokia Monitors, 1994/09 - 1996/12
Software Engineer
Debugged and extended a proprietary order-entry and invoicing system written in the MS FoxPro database language
Integrated the system with FedEx's shipping applications to automatically update the status of orders in the database
Connected the system to remote offices via modems and routers for automatic data entry
Designed, configured, and maintained multi-site WAN.
Opera Computer, 1991/10 - 1994/06
Founder
Technical Support Manager
Lead Software Engineer
Co-founder of Opera Computer, a WordPerfect reseller in Turkey
Responsible for training of all customer support personnel
Lead programming localization efforts to make WordPerfect available in Turkish
Karel Computer, 1989/06 - 1990/06
Software Engineer
- Translated the DR DOS operating system and the entire suit of GUI products of Digital Research Corporation, as well as some of the user manuals of those products to Turkish
- Patched pre-compiled object files to support Turkish keyboard layout and to enable the copy protection of applications
Education
1994 - MS in Physics, Istanbul Technical University
1989 - BS in Electronics Engineering, Istanbul Technical University
Courses
2000 - Extreme Programming Software Methodology at SD 2000.
1996 - Electronic Data Interchange (EDI) at UC Berkeley Extension