Michal Salajka, Linked Data Developer in Espoo, Finland
Michal Salajka

Linked Data Developer in Espoo, Finland

Member since October 25, 2018
Michal is a full-stack developer who enjoys creating well-tested, responsive web applications. Contributes to open-source projects, including social networks for hospitality exchange, collaboration, and food-sharing. Loves to learn by doing and experimenting with new ideas, concepts, and technologies. Michal enjoys collaboration and sharing, and approaches work as play. Recently has been enthusiastic about web decentralization with Linked Data and Solid Project.
Michal is now available for hire

Portfolio

Experience

Location

Espoo, Finland

Availability

Part-time

Preferred Environment

Linux, Git, Visual Studio Code, Vim Text Editor

The most amazing...

...project I've created is a tool for visualizing and sharing abstract mathematics knowledge as a directed acyclic graph.

Employment

  • Front-end developer

    2021 - PRESENT
    Hnutí Brontosaurus
    • Created a frontend web application for organization information system (event organizers and members).
    • Participated in UI, UX and flow design of the application.
    • Connected REST API endpoints to the frontend web app.
    • Opened issues, proposed improvements in security and functionality of the backend REST API.
    Technologies: TypeScript, React, Redux Toolkit, Redux, SCSS, CSS, HTML, Git, GitHub, LeafletJS, Postman
  • Solid Developer

    2021 - PRESENT
    Open Hospitality Network
    • Created a MVP application for decentralized hospitality exchange and social networking with Solid Protocol, React and Typescript.
    • Designed data model and vocabulary for hospitality exchange.
    • Participated in Inrupt Solid Workshop with the product (winner of the first prize).
    • Designed and implemented a protocol for communication between distributed social network participants.
    • Wrote a developer story (readable documentation) about the development of the distributed social network.
    • Opened and fixed issues in Node Solid Server software/repository. Discovered and documented issues with private group permissions in Solid Protocol.
    • Participated in community meetings, replied to public issues on GitHub, reviewed PRs.
    Technologies: Linked Data, RDF, Turtle, Solid Project, TypeScript, React, Redux, Redux Toolkit
  • Full-stack Developer

    2016 - 2020
    Trustroots
    • Implemented collecting statistics with Grafana and StatHat.
    • Fixed security bugs. Improved member security by implementing an improved algorithm for randomizing user location.
    • Reviewed code and supported other contributors in learning code base and related technology.
    • Implemented displaying user statistics (i.e., response rate and response time) in user profiles.
    • Created endpoints for API written in Node.js and Express.js.
    • Wrote automatic tests for API following a practice of behavior-driven development (BDD).
    • Collaborated on building a reference system to improve member security.
    • Implemented the web application's internationalization with react-i18next. Supported other contributors.
    • Progressed with the migration of the web app from Angular.js to React. Supported other contributors.
    Technologies: React, MongoDB, Angular, Express.js, Node.js, JavaScript
  • Full-stack Developer

    2019 - 2019
    Showcase (via Toptal)
    • Created a REST API with Node.js, Express.js, and SQL database using principles of behavior-driven development.
    • Implemented matching algorithms and user video storage.
    • Built a web application for administration with React and JavaScript.
    • Deployed and managed the REST API, web application, and data storage on AWS.
    Technologies: Amazon Web Services (AWS), REST APIs, React, Node.js, Express.js, SQL, Behavior-driven Development (BDD), MySQL
  • Full-stack Developer

    2018 - 2018
    Karrot
    • Implemented emoji reactions to posts in both Django API and Vue.js app following the practice of Behavior-driven Development.
    • Participated in a hackathon and completed assigned tasks.
    • Participated in a technical discussion on GitHub, contributed to the open source GitHub repository of the project.
    Technologies: Vue, Django, Python, Git
  • Co-founder and Developer

    2015 - 2018
    Ditup.org
    • Designed and built a major part of a REST API using Express.js and Node.js.
    • Created a data model based on a social graph using ArangoDB.
    • Designed and built the majority of a front-end app using Angular 5 and TypeScript.
    • Created detailed tests following the practice of behavior-driven development (BDD).
    • Performed server administration (Debian, nginx).
    Technologies: TypeScript, JavaScript, ArangoDB, Angular, Express.js, Node.js

Experience

  • Sleepy Bike
    https://sleepy.bike

    A decentralized hospitality exchange network built with touring cyclists in mind, over Solid Protocol.

    It's a collaboration project, part of Open Hospitality Network ( https://openhospitality.network). Built with React and TypeScript

    Winner of Solid Developer Workshop

    Repository: https://github.com/OpenHospitalityNetwork/ohn-solid

    It's a work in progress

  • Kirjasto - an interactive map of libraries
    https://kirjasto.vercel.app

    An interactive map of Helsinki area libraries, written in React and Typescript. You can display libraries on the map, filter libraries by available services and opening hours, show detailed info about each library, and show a timeline of opening hours. It's made with mobile users in mind, and ready for internationalization.

    The app uses helmet.fi api and OpenStreetMap as data sources.

    Repository: https://github.com/mrkvon/kirjasto

  • Ditup over Solid
    https://solid.ditup.org/

    A decentralized app for collaboration in reality, connecting people based on common interests and values.

    It's based on Solid Protocol - user data are stored in personal Solid Pods. We also develop working services for social networking over this next-generation, privacy-centered technology, e.g. a service for data indexing and discovery.

    Repository: https://github.com/ditup/ditup-solid
    Index: https://github.com/ditup/solid-index

    It's a Work in Progress

  • Graph of Solid Friends
    https://friends.livegraph.org/

    A Linked Data crawler that visualizes a social graph - network of friends (foaf:knows) in Solid Project. It uses BFS algorithm to crawl the network, starting from Tim Berners-Lee, or your own Solid webId.

    Repository: https://github.com/mrkvon/friend-crawler

  • Influenced
    https://influenced.livegraph.org

    This is an open-source web app that visualizes how well-known people influenced each other. Based on linked data from Dbpedia.org.

    The main technologies used were React, Redux, D3.js, and SPARQL.

    Created in collaboration with Agata Andrzejewska (https://www.toptal.com/resume/agata-andrzejewska).

    Repository: https://git.mrkvon.org/influenced/influenced

  • Math Livegraph
    https://math.livegraph.org

    Save and visualize dependencies in abstract mathematics as Directed Acyclic Graph. The data are stored on Personal Solid Pods of users, making the app distributed. It's written in React and Typescript.

    Repository: https://github.com/livegraph-org/solid-math

    It's a Work in Progress

  • Trustroots Scraper
    https://git.mrkvon.org/mrkvon/trustroots-graph

    A web crawler that collects user contacts of https://trustroots.org in order to display a social graph. It crawls users and their contacts and creates CSV files that can be visualized in Gephi, among others.

    It was written in JavaScript (Node.js).

  • osm2pdf
    https://www.npmjs.com/package/osm2pdf

    A Node.js global package for downloading maps from openstreetmaps.org to a PDF file. It downloads either the map of a track provided in GPX format or a rectangular area specified by its GPS coordinate boundaries.

  • ditup.org
    https://git.mrkvon.org/ditup

    It's a platform connecting people for collaboration.

    The REST API is written in Node.js, Express.js, and ArangoDB. The app is written in Angular 5+.

    User data are stored as a social graph.

    Users can find each other based on subjects they are interested in.

  • Cellular Encoder
    https://git.mrkvon.org/mrkvon/cellular-encoder-app

    This web tool can encrypt and decrypt messages using the randomness created by elementary cellular automatons.

    The original idea is based on Steven Wolfram's book A New Kind of Science.

    The application is written with Angular and HTML Canvas.

    The app can be seen at https://mrkvon.github.io/narozeninova/

    It's a birthday present.

  • Minimalistic Blogging System
    https://git.mrkvon.org/mrkvon/blogo

    A minimalistic blogging system is written in Go. The data is managed with JSON and Markdown. It was a hobby project to play with Go.

    It currently runs in production on the author's personal website.

Skills

  • Languages

    JavaScript, TypeScript, HTML, SQL, Python, CSS, SCSS, SPARQL, RDF, Go
  • Frameworks

    Express.js, JSON Web Tokens (JWT), Angular, Django, Redux, Tailwind CSS
  • Libraries/APIs

    Node.js, React, REST APIs, NgRx, Vue, D3.js, LeafletJS
  • Tools

    Vim Text Editor, Git, GitHub, Postman, NPM
  • Paradigms

    Behavior-driven Development (BDD), REST
  • Other

    Linked Data, Semantic Web, Solid Project, Solid Protocol, Single-page Applications (SPA), HTML Canvas, Turtle, Redux Toolkit, AWS, Gatsby, Apps, OpenStreetMap, Maps, i18n, Linked Data Fragments, Decentralized Applications, Decentralization
  • Platforms

    Linux, Visual Studio Code, Amazon Web Services (AWS)
  • Storage

    MySQL, MongoDB, ArangoDB, Media Queries

Education

  • Completed Courses towards a Bachelor's Degree in Physics
    2008 - 2012
    Charles University - Prague, Czech Republic
  • Completed Courses towards a Bachelor's Degree in Environmental Sciences
    2007 - 2012
    Charles University - Prague, Czech Republic

To view more profiles

Join Toptal
Share it with others