import speaker1 from "../assets/speakers/speaker1.jpg"; import speaker2 from "../assets/speakers/speaker2.jpg"; import speaker3 from "../assets/speakers/speaker3.jpg"; import speaker4 from "../assets/speakers/speaker4.jpg"; import { BiLogoLinkedinSquare } from "react-icons/bi"; type ImageProps = { src: string; alt?: string; }; type SocialLink = { href: string; icon: React.ReactNode; }; type Talk = { title: string; type: "Talk" | "Workshop" | "Networking" | "AI and Future" | "Interaction"; }; export type TeamMember = { image: ImageProps; name: string; role: string; company: string; companyUrl?: string; description: string; category: string; talks: Talk[]; socialLinks: SocialLink[]; }; type Props = { teamMembers: TeamMember[]; }; export type Team4Props = React.ComponentPropsWithoutRef<"section"> & Partial; const talkBadgeClass = (type: Talk["type"]) => { if (type === "Workshop") return "bg-acid-lime text-tech-navy"; if (type === "Networking") return "bg-acid-lime text-tech-navy"; return "bg-electric-violet text-cloud-white"; }; const MemberCard = ({ member }: { member: TeamMember }) => (
{member.image.alt}
{member.name}

{member.role}

{member.company}

{member.description}

{member.talks.map((talk, i) => ( {talk.title} ))}
{member.socialLinks.map((link, i) => ( {link.icon} ))}
); export const Team4 = (props: Team4Props) => { const { teamMembers } = { ...Team4Defaults, ...props }; return (
{teamMembers.length === 0 ? (

Keine Speaker gefunden.

) : (
{teamMembers.map((member, i) => ( ))}
)}
); }; export const Team4Defaults: Props = { teamMembers: [ { image: { src: speaker1, alt: "Jens Riegelsberger" }, name: "Jens Riegelsberger", role: "UX Director", company: "Google", description: "Jens leitet die UX-Teams für Search und Maps sowie die globale UXR-Infrastruktur. Der HCI-Experte lehrte als Gastprofessor an der UdK Berlin und bringt Erfahrung von Stationen bei Microsoft Research, Amazon und Apple mit.", category: "Research", talks: [ { title: "Talk: Scaling Research", type: "Talk" }, { title: "Workshop: Skalierbare Research-Infrastruktur", type: "Workshop" }, ], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker2, alt: "Marcus J. Low" }, name: "Marcus J. Low", role: "Principal Designer", company: "Airbnb", description: "Als Mitentwickler des ersten Airbnb Design Systems spricht Marcus über die Balance zwischen Markenästhetik und funktionaler Logik.", category: "Design / UX", talks: [{ title: "Workshop: The Future of Tokens", type: "Workshop" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker3, alt: "Reto Gwerder" }, name: "Reto Gwerder", role: "Head of Product", company: "Ginetta", description: "Reto steht für Schweizer Design-Qualität. Er analysiert, warum Simplizität oft die größte technische Herausforderung ist.", category: "Strategie", talks: [{ title: "Talk: Simplify or Die", type: "Talk" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker4, alt: "Dr. Elena Rossi" }, name: "Dr. Elena Rossi", role: "Cognitive Psychologist", company: "University of Milan", description: "Elena verbindet Wissenschaft mit Design. Sie erklärt, wie unser Gehirn auf Micro-Interactions reagiert und wann wir uns manipuliert fühlen.", category: "Psychologie", talks: [{ title: "Deep Dive: Psychological UX", type: "Talk" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker1, alt: "Liam O'Connor" }, name: "Liam O'Connor", role: "Lead Product Designer", company: "Spotify", description: "Liam gibt Einblicke, wie Spotify Personalisierung nutzt, ohne die Privatsphäre der Nutzer zu verletzen.", category: "AI & Future", talks: [{ title: "Talk: Trust in AI UX", type: "Talk" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker2, alt: "Fabienne Keller" }, name: "Fabienne Keller", role: "Gründerin", company: "User-First Agency", description: "Fabienne ist Expertin für User Research in komplexen B2B-Umfeldern und wie man Stakeholder von Test-Ergebnissen überzeugt.", category: "Research", talks: [{ title: "Workshop: Research Repositories", type: "Workshop" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker3, alt: "Thomas Meyer" }, name: 'Thomas "Tom" Meyer', role: "Creative Director", company: "Swisscom", description: "Tom zeigt, wie man in großen Konzernen eine Design-Kultur etabliert, die über das visuelle Layer hinausgeht.", category: "Strategie", talks: [{ title: "Networking: Leading Teams", type: "Networking" }], socialLinks: [{ href: "#", icon: }], }, { image: { src: speaker4, alt: "Sarah M. Widmer" }, name: "Sarah M. Widmer", role: "Senior UX Architect", company: "SBB", description: "Sarah gestaltet die Mobilität von morgen. Sie zeigt, wie man Millionen von Nutzern barrierefrei durch den digitalen öV-Dschungel leitet.", category: "Design / UX", talks: [{ title: "Talk: Inclusive Design at Scale", type: "Talk" }], socialLinks: [{ href: "#", icon: }], }, ], }; export default Team4;