# Dino Morelli [dino@ui3.info][mail] | [github][gh] Experienced software engineer specializing in functional programming with Haskell on Linux systems. Strong background and experience in back-end data processing and tool building. ## Skills * Languages: Haskell, Scala, Python, bash, Java, Perl * Web: REST, Apache, Servant, happstack, LetsEncrypt * Database: MongoDB, PostgreSQL, MySQL * Cloud/devops: AWS, Azure, Ansible * Linux/UNIX: Arch, Ubuntu, Debian, Rocky, Solaris, systemd * Blockchain: Cardano (ADA), Plutus, Marlowe * Miscellaneous: Android, epub ## Experience ### Input/Output Global (remote) #### 2022 Apr to present Haskell programmer on the Marlowe Smart Contract team * Worked on the future generation of the Marlowe Runtime and marlowe-cli tools to create and execute Marlowe contracts on the blockchain. * Worked on a web-based explorer prototype for Marlowe contracts for examining contract information on-chain. ### Input/Output Global (remote) #### 2021 Apr to 2021 Sep (unpaid volunteer) Student and volunteer for the [Plutus Pioneer Program][ppp], learning about building smart contracts on IOG's Cardano blockchain * Participated in the first-ever session of the class to learn smart contract development with Haskell and the Plutus language. Plutus is the on-chain form of Cardano smart contracts. * Mentoring and teaching first-time Haskell programmers * Contributed a large amount of [critical community documentation][pppdoc] for getting started and maintaining the Plutus development packages on Linux systems. This includes documenting installation and maintenance of Nix. * Contributed [systemd unit files][pps] for developing with the Plutus Playground, a web-based environment for developing and running Cardano smart contracts on a local blockchain simulator. ### Edwards Lifesciences (remote) #### 2020 Apr to 2021 Mar - Software Engineer (contract) Updates and new features for a system tracking chemical composition and regulatory compliance across Edwards' entire medical devices enterprise * Complex report generation leveraging Haskell and Oracle SQL database * Significant developer environment and infrastructure work for deployment on AWS * REST servers using the happstack framework ### HERE Technologies (remote) #### 2019 Jun to 2019 Dec - Software Engineer (contract) Location data transformation work using the HERE Tech Open Location Platform * Wrote Protocol Buffer schemas and processed them into Scala * Wrote Scala software to manipulate these data structures * Performed location data transformations on the Spark-based OLP system ### Honu Apps LLC (Raleigh, NC, USA) #### 2014 Nov to present - Co-founder, Software Engineer Software development consulting services * [Kitchen Snitch][kspl] restaurant health inspection app. Back-end [data-acquisition][kdsrc] and [REST server][krsrc] made with Haskell, MongoDB, Google Maps, Geocoding and Places APIs, AWS * SigMet Solutions weather forecast HPC cluster automation and web development. Haskell * SpectraHex Android puzzle game. Written in highly-functional Scala. [Source][shsrc] ### Panasonic Weather Solutions (Morrisville, NC, USA) #### 2011 Mar to 2018 Feb - Senior Software Engineer Producing weather forecast products on high-performance computing clusters * Haskell and Scala used extensively to parallelize weather forecasting processes on a high-performance computing cluster. CentOS, Slurm, Lustre * Scala REST server work in support of various products * All system design features functional programming techniques ### Burlington Aviation Technology School (Burlington, VT, USA) #### 2009 Aug to 2011 Jun - Software Engineer (contract) Custom web-based education solutions for Avionics students * Designed and built the GROLPrep website, a study tool and test simulator for the FCC GROL and Radar Endorsement exams * Haskell, happstack, SQLite. [Source][gsrc] * [Try GROLPrep yourself][glive] ### AT&T Network Security (Morrisville, NC, USA) #### 2007 Oct to 2009 Jun - Software Engineer (contract) Member of the Network Security group responding to spam and copyright violation complaints * Architect and lead developer on a copyright infringement notification system written in Haskell * Wrote custom email APIs and extensive Perl unit test automation for an existing complaint processing system * Haskell, Perl, MySQL, XML, email parsing and generation, UNIX daemons, concurrency, process control ## Open source software development I have been a contributor to open-source projects, mostly Haskell: xmobar, cabal-install, darcs, [string-conv][scsrc], TagSoup. I created and maintain many open-source projects including: [py-mkvenv][pmsrc], epub-tools, epub-metadata, hsinstall, uacpid, hscrtmpl, photoname. Over 50K lines of original code in Haskell alone. These projects are hosted and documented in detail on [github][gh]. I run the Haskell Meetup in downtown Raleigh, NC. I am experienced in epub creation and maintain the epub edition of ["(Nothing But) Flowers"][nbf] by John G. McDaid, a Creative Commons licensed work of fiction. ## Education **Plutus Pioneer Program** Input Output Global's [online class][ppp] for smart contract development with Haskell/Plutus on the Cardano blockchain **Functional Programming Principles in Scala** Ecole Polytechnique Federale de Lausanne via [Coursera][crsfp] **Statistics 1** Princeton University via [Coursera][crs] [mail]: mailto:dino@ui3.info [gh]: https://github.com/dino- "Dino's github projects" [kspl]: https://play.google.com/store/apps/details?id=com.honu.ksnitch [kdsrc]: https://github.com/dino-/ks-download "Kitchen Snitch data acquisition" [krsrc]: https://github.com/dino-/ks-rest "Kitchen Snitch REST server" [shsrc]: https://github.com/dino-/spectrahex [gsrc]: https://github.com/dino-/grolprep [glive]: http://ui3.info/grolprep/bin/fcc-grol-prep.cgi "GROLPrep live site" [scsrc]: https://github.com/Soostone/string-conv [pmsrc]: https://github.com/dino-/py-mkvenv [nbf]: http://harddeadlines.com/node/984 [ppp]: https://developers.cardano.org/en/plutus-pioneer-program/ [pppdoc]: https://github.com/nstankov-bg/docs.plutus-community.com [pps]: https://github.com/dino-/plutus-playground-systemd [crs]: https://www.coursera.org/ [crsfp]: https://www.coursera.org/learn/progfun1? --- 2023-03-09