{"company":{"id":4051,"name":"Trainline","domain":"thetrainline.com","url":"https://alion.io/company/trainline"},"answer":"Trainline builds mostly with Python, C#, SQL, PowerShell. Its stack also includes AWS, GitHub Actions, DynamoDB, PostgreSQL. AWS is named in 13 of the 34 job postings Trainline published in the last 12 months (38%). Counted by Alion from the job postings of Trainline, updated Oct 1, 2026.","window_days":365,"postings_analysed":34,"open_postings":14,"technologies_in_use":72,"modernity_score":78,"ai_adoption":true,"technologies":[{"name":"Terraform","layer":"tools","postings":16,"share":0.4706,"required":10,"open_postings":7,"first_seen":"2026-05-06","last_seen":"2026-09-23","median_stated_pay_usd":94690},{"name":"CI/CD","layer":"practices","postings":14,"share":0.4118,"required":12,"open_postings":6,"first_seen":"2026-05-06","last_seen":"2026-09-23","median_stated_pay_usd":94690},{"name":"Docker","layer":"tools","postings":14,"share":0.4118,"required":5,"open_postings":7,"first_seen":"2026-05-06","last_seen":"2026-09-23","median_stated_pay_usd":94690},{"name":"AWS","layer":"cloud","postings":13,"share":0.3824,"required":7,"open_postings":4,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":94690},{"name":"Python","layer":"languages","postings":10,"share":0.2941,"required":9,"open_postings":6,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"GitHub Actions","layer":"cloud","postings":10,"share":0.2941,"required":5,"open_postings":3,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":94690},{"name":"New Relic","layer":"cloud","postings":10,"share":0.2941,"required":4,"open_postings":3,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":94690},{"name":".NET","layer":"cloud","postings":8,"share":0.2353,"required":8,"open_postings":2,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":106957},{"name":"Machine Learning","layer":"practices","postings":8,"share":0.2353,"required":8,"open_postings":6,"first_seen":"2026-06-29","last_seen":"2026-09-30","median_stated_pay_usd":null},{"name":"C#","layer":"languages","postings":8,"share":0.2353,"required":3,"open_postings":2,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":106957},{"name":"Spark","layer":"cloud","postings":7,"share":0.2059,"required":6,"open_postings":5,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"DynamoDB","layer":"data","postings":7,"share":0.2059,"required":0,"open_postings":2,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":94690},{"name":"PostgreSQL","layer":"data","postings":7,"share":0.2059,"required":0,"open_postings":2,"first_seen":"2026-05-06","last_seen":"2026-09-10","median_stated_pay_usd":94690},{"name":"SLI/SLO/SLA","layer":"practices","postings":6,"share":0.1765,"required":6,"open_postings":2,"first_seen":"2026-06-29","last_seen":"2026-09-15","median_stated_pay_usd":74846},{"name":"AI Agents","layer":"practices","postings":5,"share":0.1471,"required":5,"open_postings":4,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"Incident Management","layer":"practices","postings":5,"share":0.1471,"required":5,"open_postings":2,"first_seen":"2026-06-29","last_seen":"2026-08-27","median_stated_pay_usd":null},{"name":"SQL","layer":"languages","postings":5,"share":0.1471,"required":5,"open_postings":3,"first_seen":"2026-07-20","last_seen":"2026-09-30","median_stated_pay_usd":null},{"name":"Azure","layer":"cloud","postings":5,"share":0.1471,"required":4,"open_postings":4,"first_seen":"2026-06-17","last_seen":"2026-09-15","median_stated_pay_usd":66235},{"name":"MLFlow","layer":"cloud","postings":5,"share":0.1471,"required":4,"open_postings":4,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"GitHub","layer":"cloud","postings":5,"share":0.1471,"required":1,"open_postings":0,"first_seen":"2026-05-06","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"IAM","layer":"practices","postings":4,"share":0.1176,"required":4,"open_postings":2,"first_seen":"2026-07-20","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Platform Engineering","layer":"practices","postings":4,"share":0.1176,"required":4,"open_postings":1,"first_seen":"2026-05-29","last_seen":"2026-08-11","median_stated_pay_usd":null},{"name":"Recommender Systems","layer":"practices","postings":4,"share":0.1176,"required":4,"open_postings":3,"first_seen":"2026-07-08","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"NumPy","layer":"frameworks","postings":4,"share":0.1176,"required":3,"open_postings":4,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"Pandas","layer":"frameworks","postings":4,"share":0.1176,"required":3,"open_postings":4,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"Scikit-learn","layer":"frameworks","postings":4,"share":0.1176,"required":3,"open_postings":4,"first_seen":"2026-06-29","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"Linux","layer":"cloud","postings":4,"share":0.1176,"required":2,"open_postings":2,"first_seen":"2026-06-29","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"DHCP","layer":"practices","postings":3,"share":0.0882,"required":3,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"DNS","layer":"practices","postings":3,"share":0.0882,"required":3,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"NLP","layer":"practices","postings":3,"share":0.0882,"required":3,"open_postings":3,"first_seen":"2026-07-08","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"PowerShell","layer":"languages","postings":3,"share":0.0882,"required":3,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"TCP/IP","layer":"practices","postings":3,"share":0.0882,"required":3,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Windows","layer":"cloud","postings":3,"share":0.0882,"required":3,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Active Directory","layer":"cloud","postings":3,"share":0.0882,"required":2,"open_postings":2,"first_seen":"2026-08-13","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Amazon ECS","layer":"cloud","postings":3,"share":0.0882,"required":1,"open_postings":1,"first_seen":"2026-06-26","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"Feature Store","layer":"practices","postings":2,"share":0.0588,"required":2,"open_postings":1,"first_seen":"2026-07-09","last_seen":"2026-09-09","median_stated_pay_usd":null},{"name":"GCP","layer":"cloud","postings":2,"share":0.0588,"required":2,"open_postings":2,"first_seen":"2026-06-17","last_seen":"2026-06-30","median_stated_pay_usd":null},{"name":"IdentityServer","layer":"frameworks","postings":2,"share":0.0588,"required":2,"open_postings":2,"first_seen":"2026-06-17","last_seen":"2026-06-30","median_stated_pay_usd":null},{"name":"Jenkins","layer":"tools","postings":2,"share":0.0588,"required":2,"open_postings":1,"first_seen":"2026-07-20","last_seen":"2026-09-09","median_stated_pay_usd":null},{"name":"Power BI","layer":"cloud","postings":2,"share":0.0588,"required":2,"open_postings":1,"first_seen":"2026-07-03","last_seen":"2026-09-30","median_stated_pay_usd":null},{"name":"Tableau","layer":"cloud","postings":2,"share":0.0588,"required":2,"open_postings":1,"first_seen":"2026-07-03","last_seen":"2026-09-30","median_stated_pay_usd":null},{"name":"TeamCity","layer":"cloud","postings":2,"share":0.0588,"required":2,"open_postings":2,"first_seen":"2026-06-17","last_seen":"2026-06-30","median_stated_pay_usd":null},{"name":"Fine-tuning","layer":"practices","postings":2,"share":0.0588,"required":1,"open_postings":2,"first_seen":"2026-07-08","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"RAG","layer":"practices","postings":2,"share":0.0588,"required":1,"open_postings":2,"first_seen":"2026-07-08","last_seen":"2026-08-06","median_stated_pay_usd":null},{"name":"pySpark","layer":"tools","postings":2,"share":0.0588,"required":1,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-07-09","median_stated_pay_usd":null},{"name":"Git","layer":"tools","postings":2,"share":0.0588,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-09-10","median_stated_pay_usd":null},{"name":"Kotlin","layer":"languages","postings":2,"share":0.0588,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-09-10","median_stated_pay_usd":null},{"name":"Ruby","layer":"languages","postings":2,"share":0.0588,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-09-10","median_stated_pay_usd":null},{"name":"Swift","layer":"languages","postings":2,"share":0.0588,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-09-10","median_stated_pay_usd":null},{"name":"TypeScript","layer":"languages","postings":2,"share":0.0588,"required":0,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-09-10","median_stated_pay_usd":null},{"name":"AWS Glue","layer":"tools","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Agentic Workflows","layer":"practices","postings":1,"share":0.0294,"required":1,"open_postings":1,"first_seen":"2026-05-29","last_seen":"2026-05-29","median_stated_pay_usd":null},{"name":"Airflow","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Apache Iceberg","layer":"data","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-20","last_seen":"2026-07-20","median_stated_pay_usd":null},{"name":"Configuration Management","layer":"practices","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"Dependency Injection","layer":"practices","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-06-26","last_seen":"2026-06-26","median_stated_pay_usd":null},{"name":"Grafana","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"Kibana","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"LLM","layer":"ai","postings":1,"share":0.0294,"required":1,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"LLM Guardrails","layer":"practices","postings":1,"share":0.0294,"required":1,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"Microsoft Defender","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-06","last_seen":"2026-07-06","median_stated_pay_usd":null},{"name":"Microsoft Excel","layer":"tools","postings":1,"share":0.0294,"required":1,"open_postings":1,"first_seen":"2026-09-08","last_seen":"2026-09-08","median_stated_pay_usd":null},{"name":"Postman","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Ray","layer":"frameworks","postings":1,"share":0.0294,"required":1,"open_postings":1,"first_seen":"2026-09-09","last_seen":"2026-09-09","median_stated_pay_usd":null},{"name":"SIEM","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-06","last_seen":"2026-07-06","median_stated_pay_usd":null},{"name":"Splunk","layer":"cloud","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-07-06","last_seen":"2026-07-06","median_stated_pay_usd":null},{"name":"Time Series Forecasting","layer":"practices","postings":1,"share":0.0294,"required":1,"open_postings":0,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"Braintrust","layer":"tools","postings":1,"share":0.0294,"required":0,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"LangChain","layer":"frameworks","postings":1,"share":0.0294,"required":0,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"LangGraph","layer":"frameworks","postings":1,"share":0.0294,"required":0,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"LightGBM","layer":"frameworks","postings":1,"share":0.0294,"required":0,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null},{"name":"TensorFlow","layer":"frameworks","postings":1,"share":0.0294,"required":0,"open_postings":1,"first_seen":"2026-06-29","last_seen":"2026-06-29","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[{"name":"DHCP","first_seen":"2026-08-13"},{"name":"DNS","first_seen":"2026-08-13"},{"name":"PowerShell","first_seen":"2026-08-13"},{"name":"TCP/IP","first_seen":"2026-08-13"},{"name":"Windows","first_seen":"2026-08-13"},{"name":"Active Directory","first_seen":"2026-08-13"}],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Algoleap","url":"https://alion.io/company/algoleap-technologies/technologies","shared_technologies":62},{"name":"Sigma Software Group","url":"https://alion.io/company/sigma-software-group/technologies","shared_technologies":73},{"name":"Synapxe","url":"https://alion.io/company/synapxe/technologies","shared_technologies":58},{"name":"SailPoint","url":"https://alion.io/company/sailpoint/technologies","shared_technologies":64},{"name":"Omnissa","url":"https://alion.io/company/omnissa/technologies","shared_technologies":59},{"name":"MiniMed","url":"https://alion.io/company/minimed/technologies","shared_technologies":56},{"name":"Proofpoint","url":"https://alion.io/company/proofpoint/technologies","shared_technologies":62},{"name":"Luka & Bramer Group","url":"https://alion.io/company/lbg","shared_technologies":57}],"html_url":"https://alion.io/company/trainline/technologies","json_url":"https://alion.io/company/trainline/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-10-01T14:23:48Z","generated_at":"2026-10-01T20:43:44Z"}}