My developer journey, and today's aspirations. Interview for Kode24.

I'm proud to be featured as a Week's Coder of the Norwegian online-magazine for the developers Kode24. Here is the interview I gave to Ole Petter Baugerød Stokke (Editor at Kode24) for the publication.

Quick facts

  • Name: Maxim Salnikov
  • Age: 40
  • Education: Master's degree in Software of computing technique and automated systems at Volga State University of Telecommunications and Informatics
  • Location: Oslo, Norway
  • Job title and employer: Developer Engagement Lead at Microsoft Norway
  • Links to Twitter, portfolio, etc.:
  • Experience as a professional developer: 20+ years
  • Your setup (what kind of machine, OS, editor, etc. you are using): Microsoft Surface Book 2 + VS Code + Visual Studio Codespaces
  • Favorite music right now: Røyksopp
  • Favorite TV-series right now: Discovery Channel

Maxim SalnikovMe attending CES expo in Las Vegas

How did you get started with coding? (for example, what is the first thing you remember developing, and where did the road go?)

I believe it's a classic story of the computer geek. I understood that programming is "my thing" during the first lessons of Basic in the school - I was especially excited by the programmatic drawing of the objects. Then I was deeply engaged with Pascal/Delphi (C++ to a lesser extent) in the University (again, in different v-teams I was always responsible for the visual and UI parts of the project). So it was natural for me to immediately become a "webmaster" in the late 90s when I discovered Internet: HTML, CSS, and obligatory JS-powered animated mouse pointer tail :) Approximately at the same time, I built my first commercial projects driven by Apache+PHP+MySQL (LAMP stack).

My developer career was always connected with the Internet and UI: I spent many years by developing SaaS e-commerce solutions as a Frontend Lead, then migrated legacy Win32 solution to the web stack using Angular as a Senior Developer, and ended up as a Fullstack Developer for the digital identity company by building end-to-end PoCs where IoT sensors sent data to the web UIs in the realtime.

After moving to Norway in 2011, I discovered a meetups scene. I started to visit the events, then to help organizers, then to build userg roups and run events myself. A bit later, I started my technical speaker journey and now I deliver around 30 technical sessions per year. Then, based on the experience I gathered by running meetups and attending events as a speaker, after finding soulmates to build the teams, I co-founded two full-scale developer conferences: Mobile Era (HQ: Norway, topics: mobile development in the broadest sense) and ngVikings (HQ: Nordics, topics: Angular framework). With all these community-focused activities gradually appeared in my life...

What are you working on normally, and what are you working on right now? (what product with which technologies, etc.)

...In March 2019, I naturally shifted my career gearbox to the Developer Relations with the focus on Azure cloud (before that official move, running developer communities and conferences, technical speaking and blogging were my fulltime hobby). So when the time comes to write the code, I mainly do it for the different web and cloud use cases to support my technical demos, talks, training.

For example, an Angular app to showcase Azure Static Web App service during my live demo at NDC Oslo 2020. Or my blog to show cloud deployment of a statically generated Angular/Scully app. By the way, the English version of this interview is hosted on this blog and there is a new automatic build on every push of the corresponding markdown file.

Also, I traditionally build and support the websites for the conferences I mentioned: Mobile Era 2016-2020, ngVikings 2017-2020. For the recent editions of these, I use Hugo static site generator. Another recent mini-project: I built an Azure Function using NodeJS to generate a digital badge for every attendee of ngVikings 2020 (I believe I suddenly invented such a thing as badges for the online conferences!) and put it on the webhook of our ticketing system. Folks loved to get a badge right after the ticket registration! On the day of the event, Twitter was full of these pictures shared :)

Right now, I work on the demo of the background services of Progressive Web Apps for my next technical talk.

My workplaceDelivering a technical session from home

What does a typical workday look like to you “these days”? (are you at the home office, how do regular meetings, work tasks, etc. work)

My work is all about building the strategy and communication. So only the target channel and media changed but not the core. Now, I have meetings with my colleagues, with the local and global community organizers, with the developers who want to learn more about the cloud - from my kitchen or terrace. From the same places, I speak at the conferences worldwide these days - I think the number of my speaker appearances has only increased last months!

What would you like to learn more about in the future? (for example, new technologies you are curious about, languages you want to try, new disciplines you want to test, etc.)

My developer's passion is Web and Progressive Web Apps in particular. I scrupulously follow all the updates in this area, and there are always many things I want to learn and experiment with, for example, early drafts and Trial Origins of Web Capabilities APIs. Also, after Flutter for Web release, I want to try this framework and Dart language which drives it.

What specific tools can't you do without? (for example, specific programs and editors, editor plugins, build tools, database solutions, hosting services, etc.)

VS Code + Azure cloud extensions + "must-have" developer extensions like Prettier, Live Server, Import Cost, Peacock.

My jobIn the studio: recording videoshow for the developers

What is the worst thing you can be asked about at work? (for example, tasks you think are tedious, systems you don't like to work on, technologies you think are bad / difficult / tedious, etc.)

Not at work, but from my conference co-organizers: "the website shows older version, we need to fix it asap!" (that means I made something wrong again in my "genius" but quite an experimental Service Worker and have to revert it back, which is a challenge in this scenario :)

What do you think Norwegian developers should be better at?

Developers in Norway are very strong professionals, and I'd like them to share their knowledge and experience more often at the community events. As a meetup organizer, I always look for the speakers, and sometimes it's a challenge to find local folks. Now, with all the gatherings went online, it became simpler to invite speakers from other countries but I want to grow vivid technical speaker community in Norway.

What do you like to do when you're not working? (do you develop something in your spare time, also? hobbies?)

Besides running community meetups and developer conferences in my free time, I love traveling (now within Norway), alpine skiing, and producing music using my synth.