Senior Software Engineer @ From July 2013 to Present (2 years 6 months) Senior Software Engineer @ From March 2012 to July 2013 (1 year 5 months) Senior Software Engineer @ Primary responsibility is developing software for the Coinstar kiosk. An automated machine used by consumers to count their coins and convert them into products such as
Senior Software Engineer @ From July 2013 to Present (2 years 6 months) Senior Software Engineer @ From March 2012 to July 2013 (1 year 5 months) Senior Software Engineer @ Primary responsibility is developing software for the Coinstar kiosk. An automated machine used by consumers to count their coins and convert them into products such as currency, Amazon, iTunes and Starbucks gift cards. The kiosks were combination of custom and off the shelf hardware running Windows XP Embedded.
Created software to package and distribute software updates to remote, unattended kiosks.
Added the ability for a consumer to enter a code on a Coinstar kiosk that would give them a reward and allowed the marketing department to track the effectiveness of different advertising schemes.
Created a program to export and import the contents of an Access '97 database to a text file of SQL statements, allowing the source code control system to compare differences between revisions and branch the data with software releases. Additionally the SQL statements will be used to ease the migration to a new database engine.
Designed and implemented a system of "plug-ins" to allow the Coinstar kiosk application to use multiple PCMCIA cards from multiple mobile phone providers for communications between the field machines and the servers at headquarters. This allowed the kiosks to be installed in more locations because they no longer needed modems with phone lines for communications. From June 2006 to March 2012 (5 years 10 months) Consultant @ Assisted with creating software packages to validate the manufacturing of various motherboards. The packages utilized various modules developed at Intel and were combined with documentation to make sure that all ICs and pathways on a motherboard were exercised. From February 2006 to May 2006 (4 months) Software Engineer @ Used Perl to customize an international Bugzilla database to include report and chart creation to track developer effectiveness; an email gateway to allow customers to submit information without having access to the full system; and utilities that would allow updates from automatic systems. Switching to Bugzilla allowed the company to combine many different tracking systems into one common global system which saved money on hardware, licensing and maintenance.
Created a C++ program to impersonate various products, allowing COM objects to be developed and tested as the products are developed. This program exercised COM interfaces and verified compliance with product and API specifications. This saved lots of time in the project because multiple teams of developers were not waiting on releases.
Extended TestLink, a web-based application written in PHP, to add required features. The extensions allowed engineers and management to share progress information with team members located in other locations. The extensions also created a link between TestLink and Bugzilla so that users could update information and managers to view progress for multiple projects in one common location and format.
Built a C++ utility to collect information needed to track down issues from client machines. The utility collected OS version, installed applications and versions, driver versions, registry settings and event logs, etc. The data was combined into a report, which the customer could forward to the support staff via email. A plug-in architecture was developed so that developers from other product teams could gather information they required using the same tool. The reports were used by support staff to verify minimum installation requirements and save time tracking down version conflicts. From June 2001 to August 2005 (4 years 3 months) Senior Software Consultant @ Adapted a set of ATL/COM objects, "SNAPI," that provided a consistent interface to manipulate media samples from a stream. SNAPI allows a client application to inspect, modify and insert media samples from multiple source streams and combine them into one output stream that was broadcast to internet viewers. Windows Media, Real or QuickTime format streams were all supported. While SNAPI was written in C++, the COM objects were designed to be used from any Automation client, including Visual BASIC.
Developed a C++ application to impersonate a client application for a library used for secure music transactions over the Internet, allowing the client to develop their digital rights management From September 2000 to March 2001 (7 months) Software Engineer @ Built a C++ COM object using ATL to import and export iGrafx Professional diagrams from WebCGM metafiles. This included all shapes and text in a diagram and supported all the capabilities of WebCGM such as URL links, on screen messages ("Tool Tips"), groups of objects and layers. This allowed end-users to save time and money by re-using their existing diagrams.
Implemented many automation APIs to allow Visual BASIC for Applications (VBA) programs to access the printing functions. Designed and implemented a system of "headers" and "footers" to be added to printed output. Features included multiple lines of text, fields to represent data such as the current page number, multiple font support and printing large diagrams on standard sized printers. The virtual paper size support was used to print very large diagrams without the expense of a plotter. All the automation objects were developed in C++ as COM objects.
Contributed to development and improvement of software code base in flow charting application written in C++. From July 1998 to August 2000 (2 years 2 months) Consultant @ Developed a Dynamic-Link Library (DLL) in C++ to archive and restore video clips from a videodisk recorder to SCSI tape drives. The DLL also controlled the robot in the tape library to move tapes from the storage bins to the proper drive. Designed a system to queue tape requests to prevent resource starvation and optimize tape drive usage. From February 1998 to May 1998 (4 months) Systems Programmer @ Built a C++ COM object to save disk space by removing cluster size problems and utilizing the PKZIP data compression library in a network environment for multiple client use. The combination of compression and combining hundreds of small files into one archive saved megabytes of disk space.
Designed a system library for a C++ meta-compiler used as part of a large tax preparation application, allowing tax experts to write scripts to control the logic and flow of the application. These scripts were then compiled into C source code, which was then compiled into libraries that used the system library to process tax forms. The meta-compiler system allowed the company to save expenses by not having to re-train tax experts and re-using the existing infrastructure. Contributed to the development and improvement of company tax preparation package, which was written with Delphi and C++. From October 1996 to January 1998 (1 year 4 months) Software Engineer @ Engineered a client/server protocol for TCP/IP, IPX and NetBIOS in Win16 and Win32. The project included a library that would provide a common interface for client applications. The server side of the library also provided facilities to discover what services were provided. This allowed clients to start and find services without special configuration for each client in a customer's site. The library was written as a C++ class that allowed the client software to ignore communication layer differences.
Wrote impersonation layer to allow charting modules written by another division to work with financial information application. Developed with C++. From June 1995 to September 1996 (1 year 4 months) Software Engineer @ Created a high-speed compression system where speed and minimal code size were critical to the application. The decompression portion used only registers and one buffer for output. This allowed the system to decompress data in-place and reduced the memory footprint. Written in Intel Assembler.
Implemented copy-protection software used with Windows applications. The copy-protection code was developed using Intel Assembler. From March 1991 to May 1995 (4 years 3 months)
Computer Science @ Oklahoma Christian University From 1984 to 1986 Brendan Leber is skilled in: C++, C#, COM, Win32, C, WinDbg, Windows Services, Software Development, SQL, Databases, FreeBSD, Linux
Looking for a different
Get an email address for anyone on LinkedIn with the ContactOut Chrome extension