{"company":{"id":1440,"name":"VirtusLab","domain":"virtuslab.com","url":"https://alion.io/company/virtuslab"},"answer":"VirtusLab builds mostly with Python, C++, TypeScript, Go. Its stack also includes Azure, GitHub, Snowflake, FastAPI. Python is named in 9 of the 15 job postings VirtusLab published in the last 12 months (60%). Counted by Alion from the job postings of VirtusLab, updated Sep 27, 2026.","window_days":365,"postings_analysed":15,"open_postings":5,"technologies_in_use":91,"modernity_score":82,"ai_adoption":true,"technologies":[{"name":"Python","layer":"languages","postings":9,"share":0.6,"required":7,"open_postings":4,"first_seen":"2026-07-18","last_seen":"2026-09-26","median_stated_pay_usd":90000},{"name":"Azure","layer":"cloud","postings":6,"share":0.4,"required":6,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-24","median_stated_pay_usd":90000},{"name":"CI/CD","layer":"practices","postings":6,"share":0.4,"required":4,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":89000},{"name":"Docker","layer":"tools","postings":5,"share":0.3333,"required":5,"open_postings":1,"first_seen":"2026-07-18","last_seen":"2026-08-13","median_stated_pay_usd":90000},{"name":"Terraform","layer":"tools","postings":5,"share":0.3333,"required":5,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-13","median_stated_pay_usd":90000},{"name":"GitHub","layer":"cloud","postings":5,"share":0.3333,"required":2,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-13","median_stated_pay_usd":90000},{"name":"Linux","layer":"cloud","postings":5,"share":0.3333,"required":2,"open_postings":1,"first_seen":"2026-07-16","last_seen":"2026-08-07","median_stated_pay_usd":90000},{"name":"C++","layer":"languages","postings":4,"share":0.2667,"required":4,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"TypeScript","layer":"languages","postings":4,"share":0.2667,"required":4,"open_postings":3,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"Go","layer":"languages","postings":4,"share":0.2667,"required":3,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"Kubernetes","layer":"cloud","postings":4,"share":0.2667,"required":3,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"LLM","layer":"ai","postings":4,"share":0.2667,"required":3,"open_postings":1,"first_seen":"2026-07-16","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"GitHub Actions","layer":"cloud","postings":4,"share":0.2667,"required":2,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"Windows","layer":"cloud","postings":4,"share":0.2667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":3,"share":0.2,"required":3,"open_postings":1,"first_seen":"2026-07-23","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Bazel","layer":"tools","postings":3,"share":0.2,"required":3,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"Java","layer":"languages","postings":3,"share":0.2,"required":3,"open_postings":1,"first_seen":"2026-07-16","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Jenkins","layer":"tools","postings":3,"share":0.2,"required":3,"open_postings":1,"first_seen":"2026-07-22","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Rust","layer":"languages","postings":3,"share":0.2,"required":3,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"Claude","layer":"ai","postings":3,"share":0.2,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Claude Code","layer":"tools","postings":3,"share":0.2,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Databricks","layer":"cloud","postings":3,"share":0.2,"required":1,"open_postings":3,"first_seen":"2026-08-13","last_seen":"2026-09-26","median_stated_pay_usd":null},{"name":"Rest API","layer":"tools","postings":3,"share":0.2,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"GCP","layer":"cloud","postings":2,"share":0.1333,"required":2,"open_postings":1,"first_seen":"2026-07-24","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"JavaScript","layer":"languages","postings":2,"share":0.1333,"required":2,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Kotlin","layer":"languages","postings":2,"share":0.1333,"required":2,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"Machine Learning","layer":"practices","postings":2,"share":0.1333,"required":2,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Microsoft Entra ID","layer":"cloud","postings":2,"share":0.1333,"required":2,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Scala","layer":"languages","postings":2,"share":0.1333,"required":2,"open_postings":1,"first_seen":"2026-07-18","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"AI Agents","layer":"practices","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"Azure DevOps","layer":"cloud","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"Copilot","layer":"tools","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"FastAPI","layer":"frameworks","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Git","layer":"tools","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"MLFlow","layer":"cloud","postings":2,"share":0.1333,"required":1,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Model Context Protocol","layer":"tools","postings":2,"share":0.1333,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Platform Engineering","layer":"practices","postings":2,"share":0.1333,"required":1,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Snowflake","layer":"data","postings":2,"share":0.1333,"required":1,"open_postings":2,"first_seen":"2026-08-07","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Spark","layer":"cloud","postings":2,"share":0.1333,"required":1,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"GitOps","layer":"practices","postings":2,"share":0.1333,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"OpenTofu","layer":"tools","postings":2,"share":0.1333,"required":0,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Anomaly Detection","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Apache Kafka","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-07","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"ArgoCD","layer":"tools","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-24","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"Asyncio","layer":"frameworks","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Bash","layer":"languages","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-23","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Bitbucket","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-23","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Computer Vision","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"DNS","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"Embeddings","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Google BigQuery","layer":"data","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"GraphDB","layer":"data","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-07","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Human-in-the-Loop","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"IAM","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"JFrog Artifactory","layer":"tools","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Jetpack Compose","layer":"frameworks","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Kotlin Coroutines","layer":"other","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"LocalAI","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Microsoft Defender","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Microsoft Sentinel","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Neo4j","layer":"data","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-07","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Node JS","layer":"languages","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"PostgreSQL","layer":"data","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"PowerShell","layer":"languages","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-23","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"SIEM","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"SQL","layer":"languages","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Scikit-learn","layer":"frameworks","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Smart Contracts","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-06","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"Streamlit","layer":"frameworks","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Synthetic Data","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"TCP/IP","layer":"practices","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"Tapir","layer":"frameworks","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-06","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"Trino","layer":"data","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-13","last_seen":"2026-08-13","median_stated_pay_usd":null},{"name":"Unix","layer":"cloud","postings":1,"share":0.0667,"required":1,"open_postings":1,"first_seen":"2026-08-07","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"npm","layer":"tools","postings":1,"share":0.0667,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Ansible","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Azure AKS","layer":"cloud","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-24","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"Configuration Management","layer":"practices","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"Flask","layer":"frameworks","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Function Calling","layer":"practices","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-18","last_seen":"2026-07-18","median_stated_pay_usd":null},{"name":"GitLab","layer":"cloud","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"GitLab CI","layer":"cloud","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"GraphQL","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":1,"first_seen":"2026-08-07","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Kotlin Multiplatform","layer":"frameworks","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"OpenAI Codex","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"PWA","layer":"practices","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"Prometheus","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-24","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"Splunk","layer":"cloud","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Windows Server","layer":"cloud","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-16","last_seen":"2026-07-16","median_stated_pay_usd":null},{"name":"pySpark","layer":"tools","postings":1,"share":0.0667,"required":0,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Black Duck","url":"https://alion.io/company/blackduck/technologies","shared_technologies":63},{"name":"DVT","url":"https://alion.io/company/dvt/technologies","shared_technologies":63},{"name":"Genetec","url":"https://alion.io/company/genetec-japan-kk/technologies","shared_technologies":61},{"name":"GIC","url":"https://alion.io/company/gic/technologies","shared_technologies":65},{"name":"Nasdaq","url":"https://alion.io/company/nasdaq/technologies","shared_technologies":64},{"name":"Amadeus","url":"https://alion.io/company/amadeus/technologies","shared_technologies":67},{"name":"Qualysoft","url":"https://alion.io/company/qualysoft/technologies","shared_technologies":66},{"name":"N-iX","url":"https://alion.io/company/n-ix/technologies","shared_technologies":65}],"html_url":"https://alion.io/company/virtuslab/technologies","json_url":"https://alion.io/company/virtuslab/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-09-27T20:19:36Z","generated_at":"2026-09-28T05:58:15Z"}}