Eric Gebhart

Systems Architect, developer, Programmer

Digital Nomad, US citizen, living half time in France/Europe. Highly creative with an ability to think out of the box. Good at seeing the bigger picture and the far reaching implications of software design. A penchant for streamlining of workflow and processes and creating the tools which enable them. Loves learning knew technologies and languages, programming or otherwise. Programming elisp and using emacs in vi mode since 1995. Happily using Arch Linux and XMonad on my Wacom tablet with a custom keyboard he programmed himself, with both dvorak and bepo layouts among others.

Location
Nomadic, Domicile: 13 Meyers Ave., NC 28806, Asheville, North Carolina, United States
Email
Phone
(919) 632-1742 - US, 06 30 11 58 66 - FR (33)
Website
https://ericgebhart.com
GitHub
EricGebhart
LinkedIn
Eric Gebhart
Twitter
EricGebhart3

Experience

present

Consultant at WTE llc

Freelance systems development and programming, C, Clojure, Python, Database design, data science, etc.

Highlights

  • Clojure library to support DFS datastores and the lamba architecture.
  • Clojure library for better command line parsing.
  • Clojure library for easy integration between dfs datastores and cascalog.
  • System framework (Monte Carlo simulation) for analysing the extinction rate of the Lesser Prairie Chicken.

present

Owner/Teacher at TangoBreath

Teacher of Argentine tango.

Highlights

  • Creator of the TangoBreath vinyasa flow.

Lead engineer / Systems architect at Yeti Data

Designed and implemented a data processing system to absorb and connect data from disparate systems for data analysis and reporting. All development was done with TDD and scrum. The application is written entirely in clojure and uses Hadoop and Datomic as immutable databases. The system uses Multi-threading with Core-async, error reporting with Timbre. Cascalog is used in conjunction with DFS Datastores, Fressian and Prismatic Schema for queries and data manipulation. Hadoop is used for the backend and Datomic is on the front end. Some customers prefer data in other shapes which we could also create. The projects ran on AWS.

Highlights

  • Based loosely on Nathan Mar's 'Lambda Architecture'.
  • Clojure library to easily clean and transform almost any data into a graph database in hadoop.

Principal Systems Developer at SAS Institute

Eric was a strong contributor to the foundation of the SAS Output Delivery System (ODS). Key visible contributions are ODS Markup / Tagsets, ODS Packages, ODS Styles, Lua tagsets. Designed and developed the Object family architecture which supports the multiple output types that SAS is capable of. Creator of the Tagset programming language to enable the creation of Markup Language based output types. The Tagset programming language enabled an open source spirit to the creation and customization of many different output types, and enabled new products to come to life while also creating a more agile development cycle which was free of the core system’s 2 year software release schedule. The primary development language at SAS was a homegrown, late binding, OO language modeled after Objective C. Developed many tools using Python and perhaps too much Elisp, including emacs debuggers for Python, Lua and the in house C compiler. Eric wrote many papers from 2000-2010 and was invited every year to SAS Global Forum as well as several regional conferences and local user groups all over the country. Eric was known as an entertaining presenter.

Highlights

  • Created The ODS Tagset language
  • Created the Base object layer for almost every type of Output SAS creates.
  • Created ODS Packages.
  • Created the original ODS styles.
  • Was a popular invited presenter at many conferences every year

Consultant at Various

Primary roles in these jobs consisted of Systems and Database design and software architecture. All systems were Unix. All systems were Oracle and C with embedded SQL. A common theme was also the design and creation of a cross platform development system and the creation of programming libraries to encapsulate databases and GUI tools to facilitate rapid development and a cohesive, well behaved end product. The use of TROFF to create easy and flexible reporting tools was also common.

Highlights

  • Northern Telecom - Created an OO database manager and state driven UI framework which were used to quickly create an expansive trouble ticket system for Nortel phone switches.
  • ABB - Power transmission division. Created a cohesive cross platform development environment. Designed and developed an object oriented gui framework with Oracle and various GUI tools.
  • Northern Telecom - Developed code templates and function libraries to expedite creation of a GUI to a worldwide system. Created a reporting system using NROFF macros for easy creation of various types of reports in several formats.
  • Boeing Military Aircraft - Taught OOP to engineers using Modula2.
  • Independent Oil & Gas - Created a publishing system using, Oracle, C, Troff and PIC which tracked the drilling and production of oil and gas wells.
  • Various other contracts to create systems from health care, to manufacturing Quality control, inventory and shipping, and many others.

Publications

Various SAS Papers by SAS Institute

Various topics covering the Output Delivery System (ODS) in the Base SAS System.

Languages

English
Fluency: Native speaker
French
Fluency: C1

Skills

Clojure
Level: Master
Keywords:
  • Cascalog
  • Hadoop
  • datomic
  • data transformation
  • clojurescript
C
Level: Master
Python
Level: Master
Keywords:
  • Pandas
Software architecture and design
Level: Master
Keywords:
  • functional
  • OOP
Unix/Linux/FreeBSD
Level: Master
Keywords:
  • Unix
  • Linux
  • FreeBSD
  • Shell
  • Awk
  • sed
  • lex
  • yacc
Database design
Level: Master
Keywords:
  • NoSQL
  • Lambda architecture
  • Cascalog
  • SQL
  • Hadoop
  • Datomic
  • Oracle
  • PostGres
  • MySQL
  • embedded SQL
Lisps
Level: Master
Keywords:
  • Clojure
  • Common Lisp
  • ELisp
  • Scheme
  • plysp :-)
Haskell
Level: intermediate
Keywords:
  • XMonad
Lua
Level: Master
Cascalog
Level: Master
Level:
Level: intermediate

Interests

Learning natural languages
Keywords:
    Argentine Tango
    Keywords:
    • Kinesiology
    • Teacher
    Unicycling
    Keywords:
      Bicycling
      Keywords:
      • fixed gear
      • commuting
      • touring
      • fred
      Fitness
      Keywords:
      • bodyweight exercise
      • yoga
      • meditation
      Traveling
      Keywords:
        3D printing and design
        Keywords:
        • OpenScad
        • Scad-clj
        • Embedded programming
        • Designing and building 3D printers
        • Designing and building ergonomic keyboards
        Art
        Keywords:
        • Art history
        • sculpting
        • Drawing
        • Playing Flute
        cooking
        Keywords:
          gardening
          Keywords:
          • Rare plants
          • Indigenous plants

          © 2018-2022. All rights reserved.