Daniel Lublin – Software developer & factotum

contact: d at surname dot se

Skills & knowledge

I have extensive hands-on experience of software development and all sorts of information systems. I’m of a pragmatic problem solving orientation, and as a generalist comfortable in diverse environments.

Social and communicative, and well-experienced in working together with new people. Code is often written in cooperation, and should in any case be written so it can be cared for collectively. Prefer simple, readable solutions which are easier to maintain and more reliable.

Moving freely between systems and technologies to get things done, I am not afraid to try something new, to experiment and tinker. Iterate until success. Always learning and sharing the knowledge.

I have extensive experience of most things Linux; the operating system, development platform, and server.

My knowledge spans all the way from development in various languages, onto server administration and deployment. Using all sorts of related tools and technologies, for efficiency, correctness and working productively as a team.

Service integrations, using APIs over suitable channels, or talking IPC. Metrics, data collection, processing, and database storage. Using version control, code-review and issue-tracking systems. Automated build-systems and integrations, testing.

Buzzwords for that:

I like to see development as a craft. As a practitioner of this craft, I know the importance of being familiar with my tools. I do get a lot of things done on the command-line, which leans itself well to automation.

Talkative section

I do development around, not limited to: text-, network- and web-oriented systems, standardized and own protocols and APIs, databases, automation, data processing, system integrations. Both higher and lower levels of the stack. Adaptation, integration and new solutions – often based on common, free software.

I have much experience of networking, Internet services and infrastructure, and I’m familiar with various protocols and server implementations. Both professionally, and from running services privately, hacking on code, reading RFCs. Buzz: TCP/IP, IPv6, iproute2, iptables, arp, DNS & nameservers, HTTP(S), SMTP, DHCP, IRC, XMPP. SSH, OpenVPN, SSL/TLS certificates, CAs, OpenPGP, …

I write text that is version-controlled and readable, often in Markdown. I enjoy Pandoc for converting to other formats – even built an artist portfolio using Pandoc templates some shell script (oh and the Photoswipe js-lib, and too much CSS tweaking): samanehroghani.com

Coming to think of it, I have recently become more interested in visualization, graphing and such. I’m looking at Prometheus for metrics collection, and Grafana for visualizing of the same. With some friends I’m helping out to run a mesh-network Pjodd.se that provides free WLAN Internet-access on the streets of Malmö. I built a small tool using D3.js to graph this mesh, which has been very useful when building the network.

Mapping and GIS is also fun, and I recently dabbled with some Javascript, using Leaflet to map a sailing journey I took part in a few years ago. The former also involved some code in Go to dig out photo metadata from Digikam’s Sqlite database.

In Go I have also had fun writing twet, which is an interface to the decentralized, minimalist micro-blogging service called twtxt (participants tend to write their own clients, in their language of choice!). I find myself productive in this language, and will happily use it instead of C for various systems and problem domains.

I’m spending a little time on exploring Rust. There is a lot to learn about the language, but there is a lot of good documentation, and the compiler is very friendly. So far, I’ve used it to write a few lines of code to display the time on a 7-segment display hooked up over I2C to an old Raspberry Pi. I also tried using it to solve some of 2018’s Advent of Code challenges, before time got eaten.

Natural languages:

Assignments and experience

Volvo Cars, Lund
November 2017–July 2018 (through Stickybit AB)

Axis Communications, Lund
September 2016–August 2017 (through Stickybit AB)

Beijer Electronics, Malmö
June–August 2016 (through Stickybit AB)

Netnod Internet Exchange, Stockholm
April–November 2015

During 2003–2011 I undertook, among other things, several longer journeys. Large parts of these by hitchhiking, but that’s way too many stories for a cv.

I was previously a C++-hacker and general factotum for an online RPG at Mindark in Göteborg. Before that I was hacking at early web-server and CMS company Roxen, Linköping. I began running Slackware as my primary operating system back when Linux was at 2.0.x.