# Alan Shaw > Functional Programmer, San Francisco Location: San Francisco, California, United States Profile: https://flows.cv/alanshaw Refactoring to reduce technical debt is my daily practice. Experienced in both object-oriented and functional programming. Swift, Objective-C, Clojure/Script, TypeScript, and JavaScript/ES6. Familiar with UNIX/Linux/MacOS. Previously: Flash/Flex; C/C++, Java, Perl, etc. I've made games, web sites, interactive applications, and geometric and image-processing software. Skilled in evaluating, refactoring and porting existing code. Currently working in tax prep software, lots of data manipulation, UI components (re-frame / ClojureScript), Firebase back end. ## Work Experience ### Software Engineer @ Tallyfor Jan 2021 – Present | San Francisco Bay Area ### Instructor @ egghead.io Jan 2018 – Present | The Web I make instructional videos on JavaScript, Mac, and functional programming. ### Professional Freelancer @ Gun.io Jan 2019 – Present | San Francisco, CA Certified freelance engineer on the Gun.io platform. About Gun.io - Gun.io helps world-class engineering teams hire the world's most sought-after freelance engineers at a moment's notice. ### Independent Developer @ nodename llc Jan 2005 – Present | San Francisco, CA Various development projects on apps, web sites, and games; originally Flash/ActionScript and Flex, later JavaScript, Clojure/Script and a little TypeScript. Open source: https://nodename.github.io/projects ### Lead Programmer @ Slide Rule Software Jan 2015 – Jan 2018 Glass Planner is an iOS calendar and planning app. Created an experimental version of the app using ClojureScript and React Native using a statecharts library I implemented in ClojureScript to control the user interface. Later took over the existing Objective-C application and prepared it to sync across the user's devices. This required a great deal of refactoring and writing substantial new code in Swift in a functional style. ### contractor @ Adobe Systems Jan 2011 – Jan 2011 | San Francisco, CA (Technology and Experience Innovation group) Java and front-end programming on a middle-tier and mobile analytics solution. ### consultant @ Home Box Office Jan 2009 – Jan 2010 | New York, NY (HBO GO and Cinemax GO) I specialized in refactoring to patterns, implementing test suites, and building the application’s service layer. On Cinemax GO I concentrated on the event-driven messaging architecture and integration of a deep-linking library. ### Senior Developer @ Nabbr.com Jan 2008 – Jan 2009 | New York, NY Created a UI widget for user interaction with advertising video content ### Research Associate @ On2.com Jan 2000 – Jan 2001 Responsible for development of a Platform-Independent GUI, a system allowing the programmer to use XML to specify window components, their properties, and their dynamic screen layout. Portions completed before the project was cancelled: Wrote a layout engine in C++ for use with GLUT and OpenGL. The engine uses an XML parser to convert a description file into a tree of objects which dynamically reshape subwindows in a running application in response to events affecting the main window. Wrote an object-oriented API on top of GLUT which allows the programmer to register callback events on individual windows. (GLUT itself provides global callbacks only.) ### Assistant Vice President @ Lehman Brothers Jan 1993 – Jan 1999 | New York, NY C++ infrastructure development for equity trading applications ### Assistant Research Scientist @ NYU Medical Center Jan 1984 – Jan 1989 Applications programming in C to support a project to measure the mapping of the visual field onto the surface of the visual cortex. * 3D surface reconstruction from planar contours, dealing with complex branching * 3D scan conversion of polygonal surfaces into voxel representation * Unfolding of 3D surfaces to 2D using gradient descent to produce an optimal flattening ## Education ### MS in Computer Science New York University ### MA in Chinese St. John's University ## Contact & Social - LinkedIn: https://linkedin.com/in/nodename --- Source: https://flows.cv/alanshaw JSON Resume: https://flows.cv/alanshaw/resume.json Last updated: 2026-04-10