Robert Bruce Mcinnis Clearwater, Florida 33762 727 / 452 - 1319 R [email protected]
Total Page:16
File Type:pdf, Size:1020Kb
Robert Bruce McInnis Clearwater, Florida 33762 727 / 452 - 1319 [email protected] TECHNICAL SUMMARY Operating Systems • LuminOS, Linux, Windows 2.10-3.10,95/98/2000/CE/ME/NT/XP/Vista/7, Sun/Solaris, BSD Unix, HP-UX, AT&T System V Unix, MS- DOS, SCO System V Unix, OS/2, VMS Languages/Environments • C++, C, Pro*C, SQL, Lua, ((Lisp)), HTML, XML, CGI, Javascript, Pascal, VAX Assembler, IBM-PC Assembler, FORTRAN, HPGL,Booch, Fusion, UML, Lua, Perl • Oracle SQL, Oracle Pro*C, ODBC, MySQL, MS Access, MS SQL Server, Ingres SQL, dbVista, dBase, Persistence, ObjectStore • MS Windows (2.10 - 3.1,95, 98, CE, ME, NT, 2000, XP, Vista, 7, 8, 10), Win32/Win64 API, Presentation Manager, X Windows, Motif, Qt, Kali-SDK, Lumin-SDK • Visual C++, .NET, MFC, GNU C/C++, EGCS, Borland C++, OWL, zApp, HCR C++, HP SoftBench C/C++ • Jira, Gerrit, Git, CVS, SVN, Source Safe, PVCS, RCS, Pthreads, Multi-threading, Thread pools, STL, TCP/IP, sockets, Winsock EDUCATION • Bachelor of Science in Computer Science Northeastern University, Massachusetts • Bachelor of Science in Mathematics Northeastern University, Massachusetts CLEARANCE • Department of Defense – Secret (inactive 2009) EXPERIENCE Solid ICE Technology December 2020 - present Designer/developer/owner Clearwater, Florida Currently developing DFC, Deplorable Frog Communications. DFC is a decentralized communications tool developed to withstand DDoS attacks, de-platforming, and removal from the DNS. Distributing secure user communications behind numerous proxies, DFC will protect against the frightening rise of cancel culture and censorship. Servers implemented using C/C++ on Windows and Linux systems as well as JavaScript for browser-based client frontends, DFC utilizes distributed storage to ensure against physical and DDoS attacks. All posts are digitally signed to ensure integrity and authenticity. Upon achieving milestone one, DFC will allow for user home pages, direct messaging, and posting of messages which will include some minor markup text as well as images. Tools include Visual Studio, Visual C++, GNU C/C++, MySQL, and Git for version control. Magic Leap, Inc. June 2017 – Oct 2018 Senior Developer/Contractor Plantation, Florida Implemented the Gallery for the MagicLeap-1 (ML-1) mixed reality platform. Gallery is a multi-threaded application written for the LuminOS embedded platform using c/c++ and the Kali / Lumin RT development toolkit. Added automated testing capability to aid QA in analyzing and testing Gallery. Gallery would present all media content to the user via hologram like constructs that would allow interaction from the user. Gallery would also synchronize its contents with the cloud, thereby insuring no loss of data. Tools include gnu c/c++, git for version control, jira for work tracking, and gerrit for task management. Implemented the OX for the MagicLeap-1 (ML-1) mixed reality platform running LuminOS. The OX, or Open eXperience, is a multi- threaded, distributed, client/server application that would e nable multiple users to view, interact, and experience the same virtual content in real-time. Sub apps included tic-tac-toe, a projector, some flying UFOs, a video wall to play streaming video, the ability to share media from the Gallery, and a mu lti-user duck-hunt style shooting board. All sounds took advantage of the spatial audio capabilities of the platform. Tools include gnu c/c++, Kali / LuminSDK, git for version control, jira f or work tracking, and gerrit for task management. Implemented TriggerHappy for the MagicLeap-1 (ML-1) mixed reality platform. TriggerHappy is a single player experience similar to duck-hunt until the second level. At which point the targets begin shooting back. The user must dodge the shots or take damage while also trying to stop the enemy from drilling into our dimension. Once the portal opens, 3d models of spider bots would come crawling out trying to tear more holes in our space. At this point the user would use their gun to fire rift - sealant at the edges of the hole in order to stop the enemy (This is as far as it was implemented). Tools include gnu c/c++, Kali / Lumin-SDK, git for version control, jira for work tracking, and gerrit for task management. DreamWorks Animation LLC March 2017 – June 2017 Senior Developer/Contractor Glendale, California Worked on the farm/cloud team developing tools for artist submission and management of jobs/work to the studio compute cloud. Used C/C++ on RHEL6 Linux to maximize parallel computations across the render farm/cloud. Git was used for version control, jira for issues/task tracking, and crucible for code review s, and HTCondor for distributed process management. Solid ICE Technologies, Inc. September 2004 - February 2017 Senior Developer/Consultant Clearwater, Florida Created oChat, a real-time, collaborative desktop written in Javascript for the web. oChat allows for real-time chatting, sharing of documents, and white boarding from any platform on any modern Javascript enabled browser. Node.js was used for the oChat server and interfaced with a MySQL database on Linux. Created Icebox, a multi-threaded Windows application written in C++ to distribute add-ons for Blizzard’s World of Warcraft. The Icebox server would break down the add-on into signed blocks and send them via UDP. Each piece would have its signature verified before being assembled and installed. Created oQueue, a World of Warcraft add-on written in Lua which enabled all users to advertise, find, and join groups from any realm in the region. This required the creation of a mesh network communicating across Blizzard’s in-realm communications as well as intra-realm via their Battle.net API. This mesh was coordinated via the oQueue Scorekeeper, another Warcraft add-on that served as the central hub to seed mesh users and synchronize time across all members of the mesh. The creation of oQueue spawned a community of 600k+ users from Hong Kong, China to St. Petersburg, Russia. Along with this was promotion of the Wow Public Vent, a Ventrilo server which grew to the world’s largest as the oQueue community utilized it, averaging over 200k+ users every other month at its peak. Created Keyclone, a multi-threaded Windows application written in C++ to enable softw are multi-boxing, a gaming technique that enabled its users to coordinate multiple characters across multiple copies of the game on multiple machines. Keyclone utilized a UDP based protocol to implement its ad-hoc network to allow for near real-time performance. With the creation of Keyclone, a small community of gaming enthusiasts started to emerge, first in Shadowbane and then in Blizzard’s World of Warcraft, coining the term ‘multi-boxing’. The Nielsen Company December 2007 - September 2008 Senior consultant Oldsmar, Florida Under contract, created a proprietary business information tool for executive management. The tool was developed as a web spider designed to search out business information. In particular, board members, senior staff, and project leads along with any relationships that may exist between any of those and any other corporation or organization. All information was scrubbed and indexed then stored along with a copy of the original page to a blob database. This system was designed to be scaled up to allow for deeper and faster scanning. To utilize this data, a windows UI was designed to allow the user to select or search f or any business entity or individual. Once found, the UI would display associated data allowing the user to 'dig' int o whichever type of data they were interested. Additionally, the UI allowed the user to specify multiple targets then ask the system to f ind the shortest informational 'route' between the two, within the specified search depth. This system was invaluable to senior staff when dealing with previously unknown clients or potential vendors. Development included C/C++, SQL Server, libCURL, XML, HTML, MFC, real-time graphics and multi- threads. More details may be available upon request. ITT Aerospace / Communications Division January 2007 - November 2007 Senior consultant Clifton, New Jersey Under contract, helped bring the MPC 860 INC to Linux. The MPC 860 INC is responsible for routing data around the battlefield for the US and foreign militaries. The new INC is an embedded device developed using MontaVista's implementation of RedHat Fedora running Linux 2.6.10. I was personally responsible for several components within the system, all developed using C/C++ requiring multi-threading, Linux message queues, shared libraries, and UDP. I was also responsible for developing the SNMP interface which required implementing the MIB definitions required for the project. All system development was coordinated using the CVS version control system. Voipster BV July 2004 - March 2006 Chief Technology Officer / Chief Architect Amsterdam, Netherlands Under contract for Solid ICE, produced Voipster, the voice over IP communications tool. The Voipster system was developed using C++ on Win32 and Linux. The architecture utilized a centralized, scalable, secure, p2p client / server design to provide real-time group communication via socket based UDP. Responsible for managing the entire development team of 12 people, consisting of 6 developers, 2 testers, 2 graphic designers, 1 project manager, and 1 web developer. Personally developed a majority of the system while also overseeing the development and planning for the other sections. Servers were written using state machine-based communications and thread-based queues to manage massive user loads of over 30,000 messages per minute. GOTools, from Solid ICE Technologies Inc., was used extensively throughout the system to provide extensible pattern support. Secure audio communications were developed to allow 10-way calling and multiple audio codecs simultaneously while also supporting RTP and SIP capabilities. G7 11, iLBC and G729 were some of the codecs we provided. Secure video conferencing and file transfer were also developed for pc-to-pc calling utilizing On2 Technologies video compression technology.