Skip to content

Update Technologies Utilized #61

@Davidezrajay

Description

@Davidezrajay

https://github.com/Greenstand/greenstand-documentation/edit/main/general/engineering/onboarding/technology.md

Here are some notes from the Engineering Channel - This page should be re-written to include all the services listed.

  • Solr as the full-text search service
  • k6 (in JS) as our load testing platform, but we are considering a better solution to align with our 'build before buy' policy.
  • Next.js as a server-sider-rendering and web app cache solution
  • Cypress to do End to End test
  • We also used digital ocean's DNS service.
  • Terraform to maintain cloud infrastructure.

Currently using: HCL, Kotlin, Swift, JavaScript, PLpgSQL, TypeScript, React, Swift, Python, C++, AWK, Shell, rabbitmq, pgpool, airflow, keycloak, ambassador, ckan, grafana, loki - Future use: Solidity

Kubernetes on Digital Ocean,
ArgoCD (self managed)
Grafana (self managed)
RabbitMQ (self managed)
Ambassador (self managed)
Keycloack (self managed)
Airflow (self managed)

We use AWS for robust CDN and ML services.

What is Greenstand ideal technology infrastructure?

We are a 'build before buy' organization, so we enjoy deploying open sources cloud services into our own cloud because it reduces costs while building up engineering skill in our teams.

However the cloud team faces monitoring and stability challenges in maintaining RabbitMQ, Ambassador, Keycloack, Airflow, ArgoCD, Grafana, etc at scale, and so partially or fully managed service versions of these open source cloud technologies from the cloud provider would be ideal. Robust CDN and ML services within the same cloud provider as the rest of our infra (DO) would also be ideal.

What App languages and frameworks are you using today and what additional ones do you envision using?
We use node.js with javascript and typescript for all microservices, PostgreSQL/PostGIS, and python for Airflow jobs. We are considering moving microservices to nest.js or another microservices framework.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions