A picture of Marco.

Hey, I'm Marco Pennekamp

I'm a software engineer and creative writer.

  • I'm experienced in web development across the stack.
  • I'm interested in programming languages and actively develop my own language called Lore.
  • I have a Computer Science degree from TU Dortmund.
  • I'm the founder of creative writing community NSTB.
  • I write fiction at the crossroads of fantasy and the paranormal.
  • Currently working on: nstb.ink, Lore, and my third novel.

I'm open for new opportunities. Do you have an awesome team working on an interesting project? Or just want to get in touch? Feel free to contact me via email. Also consider visiting my Github profile.

Education

TU Dortmund University
Oct 2014 – Sep 2017
B.Sc. Computer Science
I acquired a Bachelor of Science in Computer Science from the Technical University of Dortmund. I graduated "mit Auszeichnung" ("with distinction") and achieved the second-best possible mark of 1.1 (on a grade scale of 1.0 to 4.0) with an ECTS Grade of A. My courses focused on broad Computer Science concepts, but in later semesters I also took electives in functional programming, compiler construction, computer graphics, theoretical computer science, knowledge representation and reasoning, and data science. I wrote my Bachelor's thesis (German) in the field of software synthesis.

Software Engineering

As a software engineer, I have a strong interest in functional programming and programming languages. My current go-to languages are Scala for general-purpose and backend work and Javascript for frontend work, but I have worked with an extensive range of languages in the past. These include Java, Python, Haskell, Typescript, and C++.

I am experienced in web development across the stack. I have built backends for Wordpace and Collap mostly using Scala and the Play Framework. I have used Hugo and Tailwind to build static sites (such as the Kaynef shop, and the Wordpace landing page/blog) and love working with Vue.js for my frontend needs. NuxtJS allowed me to build nstb.ink using Vue.js, which I'm very excited about. I have designed relational database schemas from the ground up, using mostly PostgreSQL.

Over almost a decade of actively programming I've had many interests, including graphics and game programming (building many game prototypes with OpenGL and C++ or Java), language design and implementation (such as a templating language compiled directly to JVM bytecode), virtual machines (studying the JVM, and building my own prototype VM), game modding, and, of course, web development.

Lore
Feb 2017 – Present
Language Designer
Lore is a programming language that explores multi-functions, component-based classes, intersection types, and semantic types. In April 2020, I finished writing the specification for a minimum language version. Now I am implementing a compiler in Scala, with Javascript as its target language. (Github)
nstb.ink
Feb 2020 – Present
Web Developer
nstb.ink is the website of my writing community NSTB. It offers a guide about our Discord server and community, as well as a blog featuring thoughts on creative writing from our members. The website is implemented using NuxtJS (with Vue.js), LESS, and Tailwind, and pulls articles from a private Ghost instance.
Wordpace
Sep 2017 – Dec 2019
Founder & Software Engineer
Wordpace was a platform for creative writing education, initially focusing on English vocabulary learning. The web application was implemented using Play Framework, Scala, PostgreSQL, and VueJS. The landing page and blog were developed with Hugo and Tailwind. (wordpace.app)
Kaynef
Nov 2017 – Dec 2019
Co-Founder & IT Lead
Kaynef was a high-quality streetwear accessory brand. Our first product was a man's bracelet made from bicycle tires. We sold directly through kaynef.de. I built the website as a static site using Webpack and Hugo. Additionally, we used services like Snipcart to support backend functionality. After our general launch in September 2018, we continually added new products throughout 2019 and redesigned the website multiple times. Ultimately, we didn't find sufficient traction in the German market. (kaynef.de)
Collap
Jul 2015 – Feb 2017
Co-Founder & Software Engineer
Collap was a web-based content publishing system with an emphasis on versioning and collaboration, originally built for and developed with the team from Icy Veins. I designed and implemented the frontend and backend. Sadly, it never got past the prototype stage. It was implemented with Play Framework, Scala, PostgreSQL, Angular 2 and TypeScript.
Bryg
Jun 2014 – Nov 2014
Language Designer
Bryg is a statically typed markup language that compiles to JVM bytecode. It supports the generation of HTML and other textual formats, as well as typical programming language constructs such as expressions, conditions, loops, variables and functions. Interoperability with Java is supported. It was implemented with Java, ANTLR and ObjectWeb ASM. (Github)

Writing

I write novels and short stories at the crossroads of fantasy and the paranormal, combining my love for imaginative worlds, weird fiction, vivid dreams, and captivating accounts of hauntings and cryptids.

I started writing seriously in October 2018 and have since finished two novel drafts, several short stories, and a novella. In 2019, I wrote over 300,000 words and intend to continue that pace going into the new decade. Even though my native language is German, I write entirely in English, as I simply prefer it both in reading and in writing.

NSTB

In February 2019, I created a Discord writing community called NSTB, which I have been leading and developing continually. Our main draw is the 6-month novel writing challenge: We challenge ourselves to write a first draft within six months, starting in March and September. We have grown steadily and as of April 2020 have about 800 registered members. Find us on nstb.ink.

Building this community has been an extensive learning experience for me. I am continually improving my community management skills and am looking forward to developing the community even further.