Profile picture

Ángel Morillas

Junior developer

Self-taught backend developer despite having been in the University of Granada for four years.

Tech Stack

Versatile technologies

Node.js

  • Node.js core API and NPM
  • Low level knowledge on the node.js and V8 internals
  • Prisma ORM
  • Websockets (uWebsockets and vanilla)
  • Express-like server frameworks (Fastify, Nanoexpress)
  • Typescript
  • Svelte & SvelteKit
  • Functional programming

SQL

  • Basic PostgreSQL queries
  • Database setup and user creation
  • Low level knowledge on indexes

C++

  • Intermediate C++ knowledge
  • Modern C++ (C++11+)
  • STD containers and functions
  • Templates and lambdas knowledge
  • Low level knowledge of common STD functions and containers implementations
  • Looking forward to C++20 modules

Linux

  • Intermediate command line knowledge
  • Used to Debian and Arch machines
  • Cron jobs scheduling and management
  • UFW knowledge
  • Bash scripting
  • Performance monitoring
  • Low level OS knowledge

Minimalism

Minimalism is something that is not usually connected with coding but I like writing concise and highly reusable modules using just the necessary NPM dependencies and relying on the core node.js API when possible.

On deployments I avoid using external dependencies such as Redis, Docker, etc. unless it is really needed to scale the service.

Decentralized technologies

  • Decentralized systems theory
  • Knowledge of blockchain and alternative decentralized ledgers
  • IPFS
  • OrbitDB decentralized databases

Projects

Cppaillier

A C++ implementation of the Paillier cryptosystem including homomorphic operations and some very useful zero knowledge proofs such as set membership and correct decryption.

@kran6a/memoize

A fully typed Typescript function memoizator compatible with node.js and browsers alike with a huge focus on performance. Originally created to memoize some DB calls seamlessly without requiring huge packages or dependencies like Redis.

@kran6a/dag-test

A WIP decentralized cryptocurrency network that makes use of a directed acyclic graph to increase its throughput during activity peaks or adverse network conditions.

It features a nice set of primitives like tokens and data storage that can be accessed and manipulated from smart contracts within the network.

Smart contracts are executed within a custom and very basic VM implementation.

The network can be tested from a graphical UI at dag.kranga.dev.

You can read more about this project here (in Spanish).

Contact me