{"company":{"id":2699,"name":"Tennr","domain":"tennr.com","url":"https://alion.io/company/tennr"},"answer":"Tennr builds mostly with TypeScript, JavaScript, Python, Apex. Its stack also includes AWS, Kubernetes, PostgreSQL, Cypress. TypeScript is named in 8 of the 18 job postings Tennr published in the last 12 months (44%). Counted by Alion from the job postings of Tennr, updated Sep 26, 2026.","window_days":365,"postings_analysed":18,"open_postings":14,"technologies_in_use":34,"modernity_score":82,"ai_adoption":true,"technologies":[{"name":"TypeScript","layer":"languages","postings":8,"share":0.4444,"required":8,"open_postings":6,"first_seen":"2026-01-23","last_seen":"2026-08-12","median_stated_pay_usd":215000},{"name":"JavaScript","layer":"languages","postings":7,"share":0.3889,"required":7,"open_postings":7,"first_seen":"2026-01-23","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":4,"share":0.2222,"required":4,"open_postings":2,"first_seen":"2026-07-08","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"Machine Learning","layer":"practices","postings":4,"share":0.2222,"required":4,"open_postings":4,"first_seen":"2026-01-23","last_seen":"2026-07-23","median_stated_pay_usd":null},{"name":"Python","layer":"languages","postings":4,"share":0.2222,"required":4,"open_postings":2,"first_seen":"2026-07-08","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"PostgreSQL","layer":"data","postings":3,"share":0.1667,"required":3,"open_postings":1,"first_seen":"2026-07-08","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"Kubernetes","layer":"cloud","postings":3,"share":0.1667,"required":1,"open_postings":1,"first_seen":"2026-07-08","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"AI Agents","layer":"practices","postings":2,"share":0.1111,"required":2,"open_postings":1,"first_seen":"2026-06-16","last_seen":"2026-07-10","median_stated_pay_usd":null},{"name":"CI/CD","layer":"practices","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-07-30","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"Cypress","layer":"frameworks","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-07-30","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"Datadog","layer":"cloud","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"JUnit","layer":"frameworks","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-07-30","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"Selenium","layer":"frameworks","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-07-30","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"TestNG","layer":"frameworks","postings":2,"share":0.1111,"required":2,"open_postings":2,"first_seen":"2026-07-30","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"Apex","layer":"languages","postings":2,"share":0.1111,"required":0,"open_postings":2,"first_seen":"2026-06-24","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"MuleSoft","layer":"cloud","postings":2,"share":0.1111,"required":0,"open_postings":2,"first_seen":"2026-06-24","last_seen":"2026-07-24","median_stated_pay_usd":null},{"name":"SGLang","layer":"frameworks","postings":2,"share":0.1111,"required":0,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-07-28","median_stated_pay_usd":null},{"name":"TensorRT","layer":"tools","postings":2,"share":0.1111,"required":0,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-07-28","median_stated_pay_usd":null},{"name":"vLLM","layer":"cloud","postings":2,"share":0.1111,"required":0,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-07-28","median_stated_pay_usd":null},{"name":"Amazon EKS","layer":"cloud","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"Anthropic","layer":"cloud","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-06-16","last_seen":"2026-06-16","median_stated_pay_usd":null},{"name":"Anthropic SDK","layer":"frameworks","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-06-16","last_seen":"2026-06-16","median_stated_pay_usd":null},{"name":"Claude","layer":"ai","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-08-26","last_seen":"2026-08-26","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-06-16","last_seen":"2026-06-16","median_stated_pay_usd":null},{"name":"Figma","layer":"cloud","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-23","last_seen":"2026-09-23","median_stated_pay_usd":null},{"name":"HashiCorp Vault","layer":"tools","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"IAM","layer":"practices","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"LangChain","layer":"frameworks","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-06-16","last_seen":"2026-06-16","median_stated_pay_usd":null},{"name":"Node JS","layer":"languages","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-08-08","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"OpenAI","layer":"cloud","postings":1,"share":0.0556,"required":1,"open_postings":0,"first_seen":"2026-06-16","last_seen":"2026-06-16","median_stated_pay_usd":null},{"name":"PagerDuty","layer":"cloud","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null},{"name":"React.js","layer":"frameworks","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-08-08","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"Tailwind CSS","layer":"frameworks","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-08-08","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"Terraform","layer":"tools","postings":1,"share":0.0556,"required":1,"open_postings":1,"first_seen":"2026-09-13","last_seen":"2026-09-13","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[{"name":"Datadog","first_seen":"2026-09-13"},{"name":"CI/CD","first_seen":"2026-07-30"},{"name":"Cypress","first_seen":"2026-07-30"},{"name":"JUnit","first_seen":"2026-07-30"},{"name":"Selenium","first_seen":"2026-07-30"},{"name":"TestNG","first_seen":"2026-07-30"},{"name":"AWS","first_seen":"2026-07-08"},{"name":"Python","first_seen":"2026-07-08"}],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Conclusion","url":"https://alion.io/company/conclusion/technologies","shared_technologies":27},{"name":"Svitla Systems","url":"https://alion.io/company/svitla-systems/technologies","shared_technologies":26},{"name":"Devsu","url":"https://alion.io/company/devsu/technologies","shared_technologies":25},{"name":"ID.me","url":"https://alion.io/company/id-me/technologies","shared_technologies":25},{"name":"Opsguru","url":"https://alion.io/company/opsguru/technologies","shared_technologies":25},{"name":"Harvey","url":"https://alion.io/company/harvey/technologies","shared_technologies":26},{"name":"Netskope","url":"https://alion.io/company/netskope/technologies","shared_technologies":28},{"name":"Softobiz Technologies","url":"https://alion.io/company/softobiz-technologies-pvt-ltd/technologies","shared_technologies":25}],"html_url":"https://alion.io/company/tennr/technologies","json_url":"https://alion.io/company/tennr/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-09-26T23:56:59Z","generated_at":"2026-09-26T23:57:27Z"}}