Frontend Talks @SoftwareMill
By: Marcin Baraniecki
Tags: Frontend, Programming, Knowledge Sharing, Team

Frontend Talks @SoftwareMill

Knowledge sharing

At SoftwareMill, we endorse every type of activity that results in experts learning new things. The earliest initiative, called Friday Market is the most universal when it comes to a variety of topics (DevOps, blockchain, functional programming — you name it), but it also doesn’t occur regularly.

Architecture meetings, on the other hand, are aimed at solving high-level software design challenges, including frameworks, databases, message queues, cloud solutions, and microservices. When not discussing a particular technology (or comparing available solutions), attendees choose a random “architectural kata” (in a form of problem description & brief system requirements) and prepare a few presentations about the proposed solution design.

DevOps Knowledge Sharing is another “club” we run at SoftwareMill. The aim is to spread the invaluable DevOps/SystemOps arcana, most often with real-world examples from projects we work on.

It is a habit to record all these meetings on Zoom so that anybody can watch & listen to the discussion at any point in time.

A new group is born

UI solutions are a substantial part of most of the modern applications’ development. The FEDs (frontend developers) group is strong at SoftwareMill — there are at least 9 strict-frontend experts, plus a few people who call themselves full-stack developers (having expertise in both UI-layer development, as well as feeling comfortable in the backend).

At the beginning of October 2020, a new knowledge-sharing group was born, called Frontend Talks.

The group is backed by several tools that help us organize the meetings. We use Slack for general communication, setting reminders about the oncoming meetings (and topics), and sharing useful links.

frontend-talks Slack channel. Names & avatars have been redacted for privacy reasons.

Meetings are held on Zoom, which allows us to record the discussion — similarly to other knowledge-sharing groups mentioned earlier. After the conference call ends, a video recording is put on Google Drive, under the company’s shared folder, so that everyone at SoftwareMill can watch it.

We keep the meetings’ history (along with hyperlinks to recordings) on an internal confluence page. There is also a “backlog” of ideas for upcoming sessions.

So far, we’ve been consistently going through new topics on a bi-weekly basis.

The form

A typical meeting starts with a brief description of the idea. Then, either one person or two people committed to the topic present their knowledge — the form is open, so it’s not necessarily a keynote/presentation, but quite often a real-world example backed by snippets of code. It is followed by an open discussion with lots of questions & new ideas.

We started our first meeting with an open discussion about the functional programming library in TypeScript, the io-ts. Consequently, the second time we met — we talked about monads — Maybe and Result in another terrific TypeScript package called true-myth. Some other topics covered:

NextJS vs Create-React-App vs Gatsby

WebWorkers — a case study from a real-world project

CSS Grid — declarative & imperative approach backed by production examples

At the moment of writing this post, we have a rich backlog of ideas to discuss in the near future, which constantly grows:

Svelte

Vue 3.0

Recoil

Node.js vs Deno

…and others. At the end of every meeting, we choose a topic from the backlog (there’s no priority) and a person (or people) responsible for the talk. And we do encourage everybody to reach out to the outside world — those discussions are a great source of inspiration for blog posts & conference talks!

Summary

Knowledge sharing — in any form — is a great way to level up the skills of developers & to spread the word about new technologies. Moreover, it gives us a better idea of who’s a potential expert in a technology anybody of us is yet to use. It doesn’t take much time to organize a group, while the advantages are invaluable!