Skip to content

Conversation

@asyncapi-bot
Copy link
Contributor

@asyncapi-bot asyncapi-bot commented Jun 4, 2025

Updated board and TSC members list is available; please review the pull request that introduces new board members to the list.

Summary by CodeRabbit

  • New Features
    • Added a comprehensive directory of Technical Steering Committee (TSC) board members, including detailed profiles and contribution history.

@netlify
Copy link

netlify bot commented Jun 4, 2025

Deploy Preview for asyncapi-website ready!

Name Link
🔨 Latest commit a3f9ac3
🔍 Latest deploy log https://app.netlify.com/projects/asyncapi-website/deploys/683ff4ae1334ce0008b23738
😎 Deploy Preview https://deploy-preview-4150--asyncapi-website.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jun 4, 2025

Walkthrough

A new JSON configuration file, TSC_BOARD_MEMBERS.json, has been added under the config directory. This file provides structured metadata for Technical Steering Committee board members, including personal details, affiliations, and a detailed record of their contributions to the project and community.

Changes

File(s) Change Summary
config/TSC_BOARD_MEMBERS.json Added new JSON file listing TSC board members with metadata and detailed contributions records.

Sequence Diagram(s)

sequenceDiagram
    participant System
    participant TSCBoardMembersConfig
    participant ConsumerApp

    System->>TSCBoardMembersConfig: Loads TSC_BOARD_MEMBERS.json
    ConsumerApp->>TSCBoardMembersConfig: Requests board member data
    TSCBoardMembersConfig-->>ConsumerApp: Returns member metadata and contributions
Loading

Possibly related PRs

Suggested labels

autoapproved, autoupdate

Suggested reviewers

  • derberg
  • akshatnema
  • anshgoyalevil
  • sambhavgupta0705
  • Mayaleeeee
  • devilkiller-ag
  • vishvamsinh28
  • asyncapi-bot-eve
  • TRohit20

Poem

In the warren of config, a new file appears,
With names and with stories of TSC peers.
Their bios and badges, all neatly arrayed,
Contributions and titles, in JSON displayed.
So here’s to the board, with carrots and cheer,
May their data be clear, and their guidance sincere! 🥕


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@codecov
Copy link

codecov bot commented Jun 4, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (0a47b19) to head (a3f9ac3).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #4150   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           22        22           
  Lines          778       778           
  Branches       144       144           
=========================================
  Hits           778       778           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@asyncapi-bot asyncapi-bot merged commit c0ef93d into master Jun 4, 2025
32 of 34 checks passed
@asyncapi-bot asyncapi-bot deleted the update-board-ffd9548d925835ceaa16345fbeba6f412662b437 branch June 4, 2025 07:28
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
config/TSC_BOARD_MEMBERS.json (1)

115-120: Fran Méndez entry missing twitter handle
All other profiles include a twitter field—please add it here for consistency (if unavailable, consider adding a twitter: null placeholder or omit uniformly).

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0a47b19 and a3f9ac3.

📒 Files selected for processing (1)
  • config/TSC_BOARD_MEMBERS.json (1 hunks)
🧰 Additional context used
🪛 Gitleaks (8.26.0)
config/TSC_BOARD_MEMBERS.json

640-640: Discovered a LinkedIn Client secret, potentially compromising LinkedIn application integrations and user data.

(linkedin-client-secret)


164-164: Found a LinkedIn Client ID, risking unauthorized access to LinkedIn integrations and professional data exposure.

(linkedin-client-id)


680-680: Found a LinkedIn Client ID, risking unauthorized access to LinkedIn integrations and professional data exposure.

(linkedin-client-id)

⏰ Context from checks skipped due to timeout of 180000ms (6)
  • GitHub Check: Automerge PR autoapproved by a bot
  • GitHub Check: Redirect rules - asyncapi-website
  • GitHub Check: Header rules - asyncapi-website
  • GitHub Check: Pages changed - asyncapi-website
  • GitHub Check: Test NodeJS PR - macos-13
  • GitHub Check: Lighthouse CI

Comment on lines +1 to +875
[
{
"name": "Aishat Muibudeen",
"github": "Mayaleeeee",
"linkedin": "aishatmuibudeen",
"slack": "U03CNHGEUR1",
"twitter": "maya_ux_ui",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website",
"conference-website",
"brand"
],
"githubID": 105395613
},
{
"name": "Aayush Sahu",
"github": "aayushmau5",
"linkedin": "aayushmau5",
"slack": "U01QRHR1ABH",
"twitter": "aayushmau5",
"availableForHire": false,
"isTscMember": true,
"repos": [
"diff"
],
"githubID": 54525741
},
{
"name": "Aayush Saini",
"github": "AayushSaini101",
"linkedin": "aayush-saini-0a25931b1",
"slack": "U04RN9LRV97",
"twitter": "Aayush__Saini_",
"availableForHire": true,
"isTscMember": true,
"repos": [
"cli"
],
"githubID": 60972989
},
{
"name": "Abir Pal",
"linkedin": "imabp",
"slack": "U01S8EQ9LQ2",
"twitter": "imabptweets",
"github": "imabp",
"availableForHire": false,
"isTscMember": true,
"repos": [
"problem"
],
"githubID": 53480076
},
{
"name": "Akshat Nema",
"github": "akshatnema",
"linkedin": "akshat-nema",
"slack": "U02TAMG2VKN",
"twitter": "AksNema",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website"
],
"githubID": 76521428
},
{
"name": "Ansh Goyal",
"github": "anshgoyalevil",
"linkedin": "thisisanshg",
"slack": "U057J527M24",
"twitter": "thisisanshg",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website"
],
"githubID": 94157520
},
{
"name": "Ashish Padhy",
"github": "Shurtu-gal",
"linkedin": "ashish-padhy3023",
"slack": "U0572R8J927",
"twitter": "Shurtu_Gal",
"availableForHire": true,
"isTscMember": true,
"repos": [
"studio",
"cli"
],
"githubID": 100484401
},
{
"name": "Dale Lane",
"github": "dalelane",
"linkedin": "dalelane",
"slack": "U01EYAFR5BR",
"twitter": "dalelane",
"availableForHire": false,
"isTscMember": true,
"company": "IBM",
"repos": [
"spec",
"spec-json-schemas",
"bindings",
"avro-schema-parser",
"java-template"
],
"githubID": 1444788
},
{
"name": "Fran M\u00e9ndez",
"github": "fmvilas",
"slack": "U34F2JRRS",
"availableForHire": false,
"linkedin": "fmvilas",
"isTscMember": true,
"repos": [
"spec",
"spec-json-schemas",
"asyncapi-react",
"extensions-catalog",
"converter-js",
"bindings",
"enterprise-patterns",
"raml-dt-schema-parser",
"openapi-schema-parser",
"html-template",
"markdown-template",
"nodejs-ws-template",
"glee",
"brand"
],
"githubID": 242119
},
{
"name": "Jonas Lagoni",
"github": "jonaslagoni",
"linkedin": "jonaslagoni",
"slack": "UQ2ANBG1E",
"company": "EventStack",
"availableForHire": false,
"isTscMember": true,
"repos": [
"spec-json-schemas",
"generator",
"parser-js",
"converter-js",
"generator-react-sdk",
"modelina",
"simulator",
"parser-api",
"EDAVisualiser"
],
"githubID": 13396189
},
{
"name": "Khuda Dad Nomani",
"github": "KhudaDad414",
"twitter": "KhudaDadNomani",
"linkedin": "khudadadnomani",
"slack": "U01RVRD1TCL",
"availableForHire": false,
"company": "Postman",
"isTscMember": true,
"repos": [
"spec-json-schemas",
"studio",
".github",
"optimizer",
"glee"
],
"githubID": 32505158
},
{
"name": "Lukasz Gornicki",
"github": "derberg",
"linkedin": "lukasz-gornicki-a621914",
"slack": "UD698Q5LM",
"twitter": "derberq",
"availableForHire": true,
"isTscMember": true,
"repos": [
"spec",
"website",
"spec-json-schemas",
"generator",
"extensions-catalog",
"bindings",
"enterprise-patterns",
"html-template",
"markdown-template",
"nodejs-template",
"nodejs-ws-template",
"java-spring-template",
".github",
"vs-asyncapi-preview",
"template-for-generator-templates",
"community",
"diff",
"chatbot"
],
"githubID": 6995927
},
{
"name": "Maciej Urba\u0144czyk",
"github": "magicmatatjahu",
"availableForHire": false,
"linkedin": "maciej-urba\u0144czyk-909547164",
"slack": "U01EB02BP7A",
"company": "Travelping GmbH",
"isTscMember": true,
"repos": [
"generator",
"asyncapi-react",
"parser-go",
"parser-js",
"converter-js",
"converter-go",
"studio",
"html-template",
"markdown-template",
"template-for-generator-templates",
"generator-react-sdk",
"modelina",
"template-for-go-projects",
"diff",
"chatbot",
"server-api",
"EDAVisualiser",
"problem"
],
"githubID": 20404945
},
{
"name": "Azeez Elegbede",
"linkedin": "acebuild",
"github": "AceTheCreator",
"twitter": "_acebuild",
"slack": "U01RWDD69PZ",
"availableForHire": false,
"isTscMember": true,
"repos": [
"asyncapi-react",
"conference-website",
"chatbot"
],
"githubID": 40604284
},
{
"name": "Pavel Bodiachevskii",
"github": "Pakisan",
"slack": "U0132LQU8C9",
"twitter": "pbodiachevskii",
"availableForHire": false,
"isTscMember": true,
"repos": [
"spec-json-schemas",
"tck",
"jasyncapi",
"jasyncapi-idea-plugin"
],
"githubID": 3388414
},
{
"name": "Philip Schlesinger",
"github": "theschles",
"slack": "U054UUYBNLF",
"twitter": "philschlesinger",
"availableForHire": false,
"isTscMember": true,
"repos": [
"jasyncapi-idea-plugin"
],
"githubID": 901430
},
{
"name": "Prince Rajpoot",
"github": "princerajpoot20",
"linkedin": "princerajpoot",
"slack": "U04STTQHV18",
"twitter": "iamPrince_2003",
"availableForHire": true,
"isTscMember": true,
"repos": [
"studio"
],
"githubID": 44585452
},
{
"name": "Richard Coppen",
"github": "rcoppen",
"linkedin": "richard-coppen",
"slack": "U01L3FH3BUH",
"availableForHire": false,
"company": "IBM",
"isTscMember": true,
"repos": [
"spec-json-schemas",
"bindings"
],
"githubID": 30902631
},
{
"name": "Samir AMZANI",
"github": "Amzani",
"slack": "U01N6AW5V5G",
"twitter": "amzani",
"linkedin": "amzani",
"company": "Apideck",
"availableForHire": false,
"isTscMember": true,
"repos": [
"studio",
"cli"
],
"githubID": 554438
},
{
"name": "Souvik De",
"github": "Souvikns",
"slack": "U01SGCZMJKW",
"twitter": "souvik_ns",
"linkedin": "souvik-de-a2b941169",
"availableForHire": true,
"isTscMember": true,
"repos": [
"cli",
"glee",
"bundler"
],
"githubID": 41781438
},
{
"name": "Quetzalli Writes",
"github": "quetzalliwrites",
"twitter": "QuetzalliWrites",
"slack": "U02AKC14WAJ",
"linkedin": "quetzalli-writes",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website",
"community"
],
"githubID": 19964402,
"img": "https://avatars.githubusercontent.com/u/19964402?v=4",
"bio": "Quetzalli Writes is an author of the book titled 'Docs-as-Ecosystem', which was published by the Apress Publishing Company. Quetzalli has been in tech for 9 years, working with SEO, Paid Search, Full-Stack development, UX, Developer Relations, and Technical Writing (Engineering Documentation). She's currently a core OSS contributor for Docs, DevRel, and Community Building at AsyncAPI Initiative. She's also a member of the AsyncAPI Technical Steering Committee (TSC).",
"title": "DevRel & DevDocs @AsyncAPI",
"company": "Postman",
"country": "\ud83c\uddf2\ud83c\uddfd",
"contributions": [
{
"type": "presentation",
"title": "How to contribute to AsyncAPI Dev Docs, AsyncAPI Conference",
"date": {
"year": 2021,
"month": "November"
},
"link": "https://www.youtube.com/watch?v=xAzbDDEbQ18"
},
{
"type": "workshop",
"title": "Workshop on contributing to AsyncAPI, CCOSS",
"date": {
"year": 2021,
"month": "October"
},
"link": "https://ccoss.org/sessions/2021/taller-contribucion-asyncapi/"
},
{
"type": "article",
"title": "Change is coming to our AsyncAPI Developer Documentation",
"date": {
"year": 2021,
"month": "December"
},
"link": "https://www.asyncapi.com/blog/changes-coming-docs"
},
{
"type": "initiative_driver",
"title": "Driver and promoter of Google Season of Docs at AsyncAPI",
"date": {
"year": 2022,
"month": "December"
},
"link": "https://www.asyncapi.com/blog/google-season-of-docs-2022"
}
]
},
{
"name": "David Pereira",
"github": "BOLT04",
"twitter": "BOLT2938",
"slack": "U02EC8BT0TX",
"linkedin": "jos\u00e9-david-pereira-13ba5315a",
"availableForHire": false,
"company": "Create IT",
"isTscMember": true,
"repos": [
"server-api"
],
"githubID": 18630253
},
{
"name": "Daniel Raper",
"github": "dan-r",
"slack": "U02FP8WBFQE",
"linkedin": "danielr",
"availableForHire": false,
"isTscMember": true,
"repos": [
"java-template"
],
"githubID": 1384852
},
{
"name": "Semen Tenishchev",
"github": "Tenischev",
"linkedin": "semen-tenishchev",
"availableForHire": true,
"slack": "U011D1DAU6S",
"isTscMember": true,
"repos": [
"java-spring-template"
],
"githubID": 4137916
},
{
"name": "Samridhi Agrawal",
"github": "Samridhi-98",
"slack": "U02T2MY9W5T",
"linkedin": "samridhi-agrawal-1713201ab",
"availableForHire": false,
"company": "ThoughtWorks",
"isTscMember": true,
"repos": [
"modelina"
],
"githubID": 54466041
},
{
"name": "Ivan Garcia Sainz-Aja",
"github": "ivangsa",
"linkedin": "ivangarciasainzaja",
"slack": "UTCN3ET4M",
"availableForHire": false,
"company": "IZERTIS",
"isTscMember": true,
"repos": [
"vs-asyncapi-preview"
],
"githubID": 1246876,
"twitter": "ivangsa",
"bio": "Java Architect with a deep understanding of Java, Spring-Boot, Spring-Cloud technologies, specializing in Domain-Driven Design (DDD) and Event-Driven Architectures creating Software Easy to Understand. Building ZenWave 360\u00ba. ZenWave 360\u00ba is a set of tools built on the foundations of Domain Driven Design and API-First principles for Event-Driven Architectures, to help you create software easy to understand. https://www.zenwave360.io/",
"title": "Java Architect. Speaker. Building ZenWave 360\u00b0.",
"img": "https://avatars.githubusercontent.com/u/1246876?v=4",
"contributions": [
{
"type": "initiative_driver",
"title": "AsyncAPI Conference On Tour 2023 - Madrid",
"date": {
"year": 2023,
"month": "October"
},
"link": "https://www.youtube.com/playlist?list=PLbi1gRlP7pihD-7XYb6c9wcTdkavDzF3_"
},
{
"type": "initiative_driver",
"title": "ZenWave SDK - Code Generator for AsyncAPI with Spring Cloud Streams",
"date": {
"year": 2024,
"month": "2022"
},
"link": "https://www.zenwave360.io/zenwave-sdk/plugins/asyncapi-spring-cloud-streams3/"
},
{
"type": "article",
"title": "API-First with AsyncAPI",
"date": {
"year": 2023,
"month": "March"
},
"link": "https://www.zenwave360.io/posts/API-First-with-AsyncAPI-And-ZenWave-SDK/"
},
{
"type": "article",
"title": "ZenWave AsyncAPI Code Generator",
"date": {
"year": 2023,
"month": "March"
},
"link": "https://www.zenwave360.io/posts/ZenWave-AsyncAPI-Code-Generator/"
},
{
"type": "article",
"title": "Generating AsyncAPI definition files from JDL with ZenWaveSDK",
"date": {
"year": 2023,
"month": "April"
},
"link": "https://www.zenwave360.io/posts/JHipster-As-IDL-for-AsyncAPIv2/"
},
{
"type": "presentation",
"title": "KIT - API-First with AsyncAPI for Event Driven Architectures",
"date": {
"year": 2023,
"month": "May"
},
"link": "https://www.youtube.com/watch?v=EoWFZfmspFM"
},
{
"type": "presentation",
"title": "Practical Event Storming with AsyncAPI v3 and ZenWave SDK",
"date": {
"year": 2023,
"month": "October"
},
"link": "https://www.youtube.com/watch?v=-uHONzz-a6U"
},
{
"type": "presentation",
"title": "Code Generation For Enterprise Integration Patterns w/ AsyncAPI & ZenWave SDK",
"date": {
"year": 2023,
"month": "October"
},
"link": "https://www.youtube.com/watch?v=gUsoD8RaCuw"
}
]
},
{
"name": "Florence Njeri",
"github": "Florence-Njeri",
"linkedin": "florencenjeri",
"slack": "U03D18YKX2M",
"twitter": "njericodes",
"availableForHire": true,
"isTscMember": true,
"repos": [
"generator"
],
"githubID": 40742916
},
{
"name": "Jeremy Whitlock",
"github": "whitlockjc",
"linkedin": "whitlockjc",
"slack": "U03HBC08EBB",
"twitter": "whitlockjc",
"availableForHire": false,
"company": "Google",
"isTscMember": true,
"repos": [
"spec-json-schemas",
"bindings"
],
"githubID": 98899
},
{
"name": "Alexander Wichmann",
"github": "VisualBean",
"linkedin": "alexcarlsen",
"slack": "U04C58GB8TF",
"availableForHire": false,
"company": "The LEGO Group",
"isTscMember": true,
"repos": [
"spec-json-schemas",
"bindings",
"saunter"
],
"githubID": 5294032
},
{
"name": "Kenneth Aasan",
"github": "kennethaasan",
"slack": "U037S2HK4TS",
"twitter": "kennethaasan",
"availableForHire": false,
"company": "Sportradar",
"isTscMember": true,
"repos": [
"modelina"
],
"githubID": 1437394
},
{
"name": "Heiko Henning",
"github": "GreenRover",
"slack": "U03AC4G51H8",
"availableForHire": false,
"company": "mtrail GmbH",
"isTscMember": true,
"repos": [
"spec",
"spec-json-schemas",
"bindings",
"protobuf-schema-parser"
],
"githubID": 512850
},
{
"name": "Thulisile Sibanda",
"github": "thulieblack",
"linkedin": "v-thulisile-sibanda",
"twitter": "thulieblack",
"slack": "U03CNJPMT7C",
"availableForHire": false,
"company": "AsyncAPI Initiative",
"isTscMember": true,
"repos": [
"website",
"conference-website",
"community"
],
"githubID": 66913810
},
{
"name": "Ashmit JaiSarita Gupta",
"github": "devilkiller-ag",
"linkedin": "jaisarita",
"twitter": "jaisarita",
"slack": "U062LA14E58",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website",
"modelina"
],
"githubID": 43639341
},
{
"name": "Sambhav Gupta",
"github": "sambhavgupta0705",
"linkedin": "sambhavgupta0705",
"twitter": "sambhavgupta75",
"slack": "U04630DU3N3",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website"
],
"githubID": 81870866
},
{
"name": "Rohit T",
"github": "TRohit20",
"linkedin": "rohit-t-0124a4242",
"slack": "U05174ZKGQ6",
"twitter": "TRRohit20",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website"
],
"githubID": 108233235
},
{
"name": "Ashmit Jagtap",
"github": "ashmit-coder",
"linkedin": "ashmit-jagtap",
"twitter": "AshmitJagtap",
"slack": "U06RA7GDHU1",
"availableForHire": true,
"isTscMember": true,
"repos": [
"conference-website"
],
"githubID": 69006513
},
{
"name": "Hari Krishnan",
"github": "harikrishnan83",
"twitter": "harikrishnan83",
"linkedin": "harikrishnan83",
"slack": "U067JPY0UH5",
"availableForHire": false,
"isTscMember": true,
"repos": [
"jasyncapi"
],
"githubID": 126087,
"country": "\ud83c\uddee\ud83c\uddf3",
"bio": "Co-creator of Specmatic and Perfiz. I also advise organizations, both large and small, on their transformation journey. Apart from bringing ideas to life as working software products, I coach developers, project managers, product owners, and engineering leaders. I have spoken at several conferences, including AACoT 2023, API Specification Conference (#ASC2022), API World, SeleniumConf, Agile2021, Agile India, TestingUY 2021, SREConf, PyCon Singapore, RubyConf India. My areas of interest include distributed systems, concurrency, high-performance application architecture, coaching, and training.",
"company": "Specmatic and Polarizer Technologies",
"title": "Co-founder and CTO at Specmatic, Founder, and CEO at Polarizer Technologies",
"img": "https://raw.githubusercontent.com/harikrishnan83/harikrishnan83/master/HariKrishnan-profile.jpg",
"contributions": [
{
"type": "talk",
"title": "Kafka and JMS Mocking with AsyncAPI",
"date": {
"year": 2023,
"month": "November"
},
"link": "https://www.youtube.com/watch?v=9yRf75p_kTU"
},
{
"type": "talk",
"title": "Unshackling Your System Under Test: Shift-Left Testing Through Dependency Isolation (Kafka Mocks with AsyncAPI specification)",
"date": {
"year": 2024,
"month": "June"
},
"link": "https://confengine.com/conferences/selenium-conf-2024/proposal/20021/unshackling-your-system-under-test-shift-left-testing-through-dependency-isolation"
},
{
"type": "talk",
"title": "Using API spec as an Executable Contract To Mock and Test Microservices",
"date": {
"year": 2024,
"month": "October"
},
"link": "https://www.youtube.com/watch?v=wiM20HTCerM"
},
{
"type": "talk",
"title": "Contract-Driven Development for Event-Driven Architectures",
"date": {
"year": 2024,
"month": "December"
},
"link": "https://conference.asyncapi.com/venue/Paris"
}
]
},
{
"name": "Charles d'Avernas",
"github": "cdavernas",
"linkedin": "charles-d-avernas-40836a13",
"slack": "U02MRF09BL1",
"availableForHire": false,
"isTscMember": true,
"repos": [
"net-sdk"
],
"githubID": 16137162
},
{
"name": "Jean-Baptiste Bianchi",
"github": "jbbianchi",
"twitter": "JBBianchi",
"linkedin": "jean-baptiste-bianchi-aa42b914",
"slack": "U08K91GKK8T",
"isTscMember": true,
"availableForHire": false,
"repos": [
"net-sdk"
],
"githubID": 72747835
},
{
"name": "Vishvamsinh Vaghela",
"github": "vishvamsinh28",
"twitter": "Vishvamsinh28",
"linkedin": "vishvamsinh-vaghela-591695217",
"slack": "U05FM7WRKU4",
"availableForHire": true,
"isTscMember": true,
"repos": [
"website",
"conference-website"
],
"githubID": 90895835
},
{
"name": "Daniel Kocot",
"img": "https://avatars.githubusercontent.com/u/466609?v=4",
"bio": "Daniel has been part of the codecentric team since October 2016. Since the beginning of 2022 he works as Senior Solution Architect at the Dortmund branch. Starting as a consultant with a focus on application lifecycle management, his focus shifted more and more towards APIs. In addition to numerous customer projects and his involvement in the open source world around APIs, our Head of API Experience & Operations is also a frequent speaker at conferences.",
"title": "Senior Solution Architect / Head of API Experience and Operations",
"github": "danielkocot",
"githubID": 466609,
"slack": "U029F3XUYM8",
"twitter": "dk_1977",
"linkedin": "danielkocot",
"company": "codecentric AG",
"country": "\ud83c\udde9\ud83c\uddea",
"isTscMember": true,
"contributions": [
{
"type": "article",
"title": "AsyncAPI - Documentation of event and message-driven architectures",
"date": {
"year": 2021,
"month": "September"
},
"link": "https://blog.codecentric.de/en/2021/09/asyncapi-documentation-event-message-driven-architectures/?hmsr=joyk.com&utm_source=joyk.com&utm_medium=referral"
},
{
"type": "article",
"title": "AsyncAPI specification updates",
"date": {
"year": 2022,
"month": "February"
},
"link": "https://blog.codecentric.de/en/2022/02/asyncapi-version-2-3-0-specification-updates/"
},
{
"type": "presentation",
"title": "AsyncAPI 101",
"date": {
"year": 2022,
"month": "May"
},
"link": "https://www.buildingiot.de/veranstaltung-13856-0-asyncapi-101.html"
},
{
"type": "presentation",
"title": "Adopting AsyncAPI in Enterprisey Contexts, AsyncAPI Conference",
"date": {
"year": 2022,
"month": "November"
},
"link": "https://www.youtube.com/watch?v=_wTcV63jrnU"
}
]
},
{
"name": "Naresh Jain",
"github": "nashjain",
"githubID": 38799,
"slack": "U07QPEBAC9Y",
"twitter": "nashjain",
"linkedin": "http://linkedin.com/in/nareshjain/",
"country": "\ud83c\uddee\ud83c\uddf3",
"isTscMember": true,
"bio": "Naresh is an internationally recognised Technology & Product Development Expert. Over the last 25 years, he has played a key role in streamlining the product engineering culture at many unicorns and fortune 500 companies. Naresh is the Founder, CEO of several companies - Xnsio, ConfEngine and Specmatic. Naresh is also the local organiser of API Days India. In 2004, Naresh started the Agile movement in India. More details: https://nareshjain.com",
"company": "Specmatic, Xnsio, ConfEngine",
"title": "Founder, CEO at Specmatic, Xnsio and ConfEngine",
"img": "https://avatars.githubusercontent.com/u/38799?v=4",
"contributions": [
{
"type": "talk",
"title": "Multi-Protocol APIs: Designing a Unified Interface for EDA",
"date": {
"year": 2025,
"month": "April"
},
"link": "https://www.youtube.com/watch?v=mQVo498NtOI"
},
{
"type": "talk",
"title": "TMForum's AsyncAPIs For a New Era of Event-Driven Architecture",
"date": {
"year": 2024,
"month": "December"
},
"link": "https://www.youtube.com/watch?v=L2W1058nPyU"
},
{
"type": "talk",
"title": "Project API Forge: Streamlining Dev-First API Lifecycle Management",
"date": {
"year": 2024,
"month": "December"
},
"link": "https://www.youtube.com/watch?v=AfopdGddnLc"
},
{
"type": "talk",
"title": "10x DevEx: Shift-Left API Governance = CycleTime/2",
"date": {
"year": 2024,
"month": "October"
},
"link": "https://www.youtube.com/watch?v=I5eplxVQrhI"
}
]
}
] No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Add JSON schema & linting for maintainability
This file is lengthy and manual edits are error-prone. Introduce a JSON Schema (e.g., config/TSC_BOARD_MEMBERS.schema.json) to declare required fields (name, github, slack, linkedin, twitter, availableForHire, isTscMember, repos, githubID, etc.) and their types. Hook it into CI or a pre-commit JSON linter to automatically validate any future updates.

🧰 Tools
🪛 Gitleaks (8.26.0)

640-640: Discovered a LinkedIn Client secret, potentially compromising LinkedIn application integrations and user data.

(linkedin-client-secret)


164-164: Found a LinkedIn Client ID, risking unauthorized access to LinkedIn integrations and professional data exposure.

(linkedin-client-id)


680-680: Found a LinkedIn Client ID, risking unauthorized access to LinkedIn integrations and professional data exposure.

(linkedin-client-id)

🤖 Prompt for AI Agents
In config/TSC_BOARD_MEMBERS.json spanning lines 1 to 875, the file is large and
manual edits risk errors. Create a JSON Schema file (e.g.,
config/TSC_BOARD_MEMBERS.schema.json) defining required fields like name,
github, slack, linkedin, twitter, availableForHire, isTscMember, repos,
githubID, and their data types. Then integrate this schema validation into the
CI pipeline or as a pre-commit hook using a JSON linter to automatically
validate changes and ensure data consistency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants