Skip to content
View g-andrade's full-sized avatar

Block or report g-andrade

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
g-andrade/README.md

Guilherme Andrade

Software engineer based in Lisbon, specialising in Erlang and Elixir. I've spent over a decade building distributed backend systems — most recently at Dash Games, before that a decade at Miniclip.


Open source

Recent — xb5: B-trees (order 5) for Erlang/OTP: drop-in gb_trees/gb_sets alternative that runs 1.2–2.5× faster, plus an order-statistic multiset (rank, nth element, percentile).

Recent — ex_fpe: Format-preserving encryption for Elixir: an implementation of the NIST SP 800-38G modes FF1 and FF3-1.

Project Description Hex downloads Stars
tls_certificate_check CA store and partial chain handler 14.7M ⭐ 23
locus MMDB reader; IP geolocation and ASN lookup 580K ⭐ 121
aequitas Fairness regulator, rate limiter 179K ⭐ 50
sqids-elixir Elixir port of Sqids 83K ⭐ 94
taskforce On-demand worker pools 55K ⭐ 43
erlffx Format-preserving encryption (FFX) 48K ⭐ 9
backwater Intercluster RPC 45K ⭐ 48
deigma Event sampler 2.4K ⭐ 24

→ full list


Upstream contributions

erlang/otp

  • ets:select_replace/2
  • Cryptographically strong random number generation via rand plugin
  • enif_hash
  • Additional small features, fixes, and documentation improvements

BEAM ecosystem

rebar3, rebar3_hex, rebar3_hank, ex_doc, exile, hackney, certifi, and others


Technologies

Languages - Erlang, Elixir, C++, SQL; some C, JavaScript, Python, Rust over the years

Runtime & data - OTP, Cowboy, Phoenix (LiveView), Ecto, Protocol Buffers; PostgreSQL, DynamoDB, Redis

Infrastructure & ops - GCP and AWS; Terraform, CloudFormation, Docker; Datadog, OpenTelemetry, PagerDuty; GitHub Actions, Jenkins, CodeDeploy

Systems - Linux as a daily driver since the mid-2000s; shell scripting, comfortable live-debugging production issues


Contact

github@gandrade.net · LinkedIn · Website

Pinned Loading

  1. locus locus Public

    MMDB reader for geolocation and ASN lookup of IP addresses

    Erlang 122 19

  2. sqids/sqids-elixir sqids/sqids-elixir Public

    Official Elixir port of Sqids. Generate short unique IDs from numbers.

    Elixir 99 5

  3. aequitas aequitas Public

    Fairness regulator and rate limiter

    Erlang 50 2

  4. tls_certificate_check tls_certificate_check Public

    CA store + Partial chain handler

    Erlang 23 6

  5. erlffx erlffx Public

    Format Preserving Encryption - FFX

    Erlang 9

  6. xb5 xb5 Public

    B-trees of order 5 (tree, set, multiset) for Erlang/OTP

    Erlang 5 1