Hope you're having a great day !
I'm Cyryl and I like working with other people on software and business processes.
I like tending to software projects and teams that run them.
I am the most fluent with building large systems but have also worked in the space of constrained resources.
Technology choice is less important to me than culture.
The more open and transparent the better I like it !
Also puns, I like puns.
Software Craftsman at Codurance, January 2017 - Now
Helping client teams grow - working within software teams and teaching technical concepts as well as improving the process.
Running workshops (e.g. Legacy Code Retreat, advanced git, TDD).
Running Rust pairing sessions and intro to Rust workshops.
Facilitating open-space conferences.
- Transportation route planning software for a big retailer, using a graph database (Gremlin/Apache Tinkerpop)
- Transaction consolidation software for a bank.
- Electronics simulation software for a startup.
Consultant at Infusion, June 2012 - November 2016
Writing code is still where I spend most of my time, and happily so. Mostly Java and .Net, sprinkled with some C, C++, Python, bash and powershell. Docker somewhere there. I gather requirements, talk to the clients, other engineers, figure out solutions together. My particular specialty seems to be taking over legacy code bases and making them shine. I am responsible for a small team of developers.
- Pulse - a product for mass remote software installation and monitoring. Used, among others, in demo kiosk installations, phone retail shops and in-flight entertainment systems. Writing server and client code. Largish system working mostly on the backend in .Net, standing on Azure. I'm helping here and there, with the architecture and sometimes doing changes to our Android client code as well.
- I've helped build a distributed solution for insurance cost calculation for Metlife Japan. Mostly Java, some IBM mainframes and occasional C++.
- I've worked for other financial institutions on distributed software for risk exposure analysis. Mostly .Net, some C++, large in-house computation farms involved.
Senior Software Engineer, Power Media S.A., February 2011 - June 2012
I was asked to return to Power Media by the head of the whole department, this was quite cool ! I've helped recruit more people and was one of the developers working on the system for TV materials storage. The system was written in C#, but I've also took a look inside an Erlang one and a one in Obj-c as well, from time to time. I've convinced the company to open source the core libraries used.
Mobile Games Developer, iNTRES/Scoreloop, December 2009 - February 2011
I was a part of a team that was tasked with developing a cross-platform, pure C library that provided matchmaking, ladders and other networking capabilities to mobile games, Pro Evolution Soccer 2011 among others. We've used C89 as the base language.
Lead Developer, Power Media S.A., June 2007 - December 2009
This was my first experience as a leader. Despite this we've managed to build the new travelplanet.pl - a website for the biggest trip broker in Poland. This was a .Net job and involved some quite heavy server machinery. Around 60 different data sources were involved. In the meantime I've also helped with growing the Erlang team and got my hands dirty with proof-of-concept low-level Mac PowerPC programming.
Software Developer, Power Media S.A., June 2006 - June 2007
My first "real" job ! Maintenance on the in-house systems written in Java. Slowly I got into client-facing project as well. Java, Webobjects.
I am one of the technical reviewers for the "500 lines or less" book, a new entry in the Architecture of Open Source Applications books series. I helped to shape the chapter on Paxos there.
The links provided are for the slide decks.
Outside-in TDD in Rust
Legacy Code Retreat - running a full-day workshop on test-driving changes in legacy code.
A secret to secure software (ssshhh it's TDD)
"Languages are communities" - impromptu talk about how communities are the most important thing when choosing your programming language.
"Erlang for the .Net people" - introduction to Erlang with some live coding by me and my friend Fabian
"Anatomy of a debugger" - very high-level overview of how debugging works
email me at email@example.com
my gpg fingerprint: F89F 039F C9F4 3A0E E959 C89F D6C1 3574 0165 CC74
my blog where I write about little things I've managed to discover or fix
github - some experiments, open source contributions
More to read
I like building tools. Be they physical or software. Something that lasts.
I like teaching - allows me to understand topics in more depth.
I'm good at understanding whole worlds of interactions within software projects. The people and their needs and then the system architecture, code itself, its execution. Because of that I'm sometimes slow to comprehend new things. I really like trying new things. I like Rust quite a bunch and am trying to actively learn it - I am a contributor to the core Rust projects. I run my own infrastructure - email, blog, backups.
I ask a lot of questions. I like to be in the understanding of the value of my work. I think there's a big value in sharing. I am really into the open source movement. I like helping people. I like electronics. I've assembled a RepRap. I've built a sun-powered backup server. I'm learning PCB design in KiCad and CAD via Fusion360. I like debugging. Electronics and software. I have a CNC router. I like board and RPG games. Rock climbing. Cycling. Other life activities.
Life issues need some debugging as well, sometimes. I help people understand their business workflows and sometimes even fix them with software.
Curious reader might want to follow my blog at blog.cyplo.net
Email me at firstname.lastname@example.org - I'm happy to have a chat with you !