Das eigene Kandidatenfrontend



Ähnliche Dokumente
RESTful Web. Representational State Transfer

SAP NetWeaver Gateway. 2013

Mobilkommunikation. REST-basierte Dienste für verteilte, mobile Anwendungen. A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

TYPO3 Slide Lightwerk GmbH

Die mobile Jobsuche für SAP E-Recruiting ist da!

Implementierung von Web Services: Teil I: Einleitung / SOAP

Beispiele, um das Spektrum an Szenarien aufzuzeigen, die mit dem extra Standard möglich sind

Zustandsgebundene Webservices

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13

ARCHITEKTUR VON INFORMATIONSSYSTEMEN

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Hochschul-App Uni Hohhenheim Case Study

IMAP und POP. Internet Protokolle WS 12/13 Niklas Teich Seite 1

Themen. Anwendungsschicht DNS HTTP. Stefan Szalowski Rechnernetze Anwendungsschicht

ASV-Betrieb für die Coburger Schulen. Einbindung externer Schulen via RemoteApp

Systembeschreibung. Masterplan Kommunikationsinterface. ASEKO GmbH. Version 1.0 Status: Final

VIVIT TQA Treffen in Köln am API- Programmierung und Nutzung bei HP Quality Center / ALM. Michael Oestereich IT Consultant QA

Wiederholung: Beginn

!"#$"%&'()*$+()',!-+.'/',

GI-Services erstellen und bereitstellen

Excel beschleunigen mit dem mit Windows HPC Server 2008 R2

Präsentation Von Laura Baake und Janina Schwemer

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

Man liest sich: POP3/IMAP

Windows Terminalserver im PC-Saal

Architekturen. DB-Anwendungen: Aufgaben. Aufteilung der Funktionen. ƒ Datenbankanwendungen

4D Server v12 64-bit Version BETA VERSION

Zur Definition von Web-Services

Step by Step Webserver unter Windows Server von Christian Bartl

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen

Technische Grundlagen von Internetzugängen

Architekturplanung und IS-Portfolio-

Administrator Handbuch

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Web Sockets mit HTML5. Quelle:

Windows Server 2008 für die RADIUS-Authentisierung einrichten

USU Smart Link Ausblick & Roadmap

In 5 Klicks zum Vorlesungsverzeichnis Stud.IP und TYPO3 integriert

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

A023 DNS Services. IKT-Architekturvorgabe. Ausgabedatum: Version: Ersetzt: 1.01

Guide DynDNS und Portforwarding

16.4 Wiederverwendung von COTS-Produkten

ANYWHERE Zugriff von externen Arbeitsplätzen

Firewall Implementierung unter Mac OS X

Drei Möglichkeiten zum Betrieb von DPV über das Internet. Dr. Matthias Grabert und Walter Geiselmann Uni Ulm

FileMaker Go 13 ohne Connects

Pure Web für Diagramme, Berichte, Handwerteingaben

Aufbau und Funktion eines VPN- Netzwerkes

Lizenzierung von System Center 2012

Inhaltsverzeichnis VII

Appery.io Mobile Apps schnell und einfach entwickeln

Security. Stefan Dahler. 4. Internet Verbindung. 4.1 Einleitung

Subpostfächer und Vertretungen für Unternehmen

Umstieg auf Microsoft Exchange in der Fakultät 02

Updatebeschreibung JAVA Version 3.6 und Internet Version 1.2

Leserdienst Leserdienst > Medien und Möglichkeiten > Übermittlung > Verarbeitung > Vorteile

Mobile Umfragen Responsive Design (Smartphone & Tablet)

iphone-kontakte zu Exchange übertragen

Web Grundlagen zum Spidering

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

design kommunikation development

Shopz Erfahrungsaustausch

MapProxy. Eine praktische Einführung FOSSGIS Heidelberg. Dominik Helle Oliver Tonnhofer

Akonadi. Der PIM-Service für den freien Desktop. Tobias König. 30. März 2010

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH

SSZ Policy und IAM Strategie BIT

ITF2XML. Transferservice. Version 1.1. Tel.: 044 / Fax: 044 / CH-8005 Zürich

Herausforderungen des Enterprise Endpoint Managements

Leitfaden zur Nutzung des Systems CryptShare /Sicheres Postfach

Point of Information. Point of Information

PATIENTEN GUIDE. Verwaltung & Organisation. April Seite 1/8

Ursprung des Internets und WWW

Benutzerkonto unter Windows 2000

XMPP: Extensible Messaging and Presence Protocol

Aufgabe 12.1b: Mobilfunknetzwerke

Schritt 2: Konto erstellen

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

PEI-C Rebuild Das neue Einreichungsportal des PEI für Chargenfreigabeanträge Z3, Z5, 7/3 Einführung 17/19/24/

Zentraler Druckserver mit CUPS

Bedienungsanleitung Elektronischer Zertifikatsaustausch

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

AEM als Digital Hub für Marketing und E-Commerce. Sebastian Immer Senior Sales Consultant Markus Tressl Senior Principal Consultant. Namics.

Preisvergleich ProfitBricks - Amazon Web Services M3 Instanz

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, Java Forum Stuttgart 2007

Session Management und Cookies

Transkript:

Das eigene Kandidatenfrontend THEMA: Mit dem BeeSite API zum eigenen Job Board Dr. Sascha Juchem R&D Abteilung sascha.juchem@milchundzucker.de

AGENDA Mit dem BeeSite API zum eigenen Job Board 01 Einleitung 02 Architektur 03 Funktionsumfang 04 Suchengine / Performance 05 Sicherheit 06 Case Studies / Die API im Einsatz

Einleitung Job Board Job-Aggregation über BeeComeOne als Teil des Global Job Boards Anforderungen / Problemstellung (Jobsuche) Ziel: Nahtlose Integration in die Karriere-Seite des Kunden Microsite Inlineframe (iframe) Kommunikation mit der Umgebung (DOM-Zugriff, SOP) Deeplinks Responsiveness Ansatz: Reduktion auf das Bereitstellen von Daten (Ressourcen) Web Service Einfach anzusprechen (auch für mobile Anwendungen) Leichtgewichtig Funktionsumfang: Basis-Funktionen für eine Stellenbörse (Suche,Anzeige,Agent) Performance > Lose Kopplung / Flexibilität

Architektur: RESTful Web Services REST * Architektur-Prinzip (ROA) Repräsentation von Ressourcen Adressierbarkeit über URI** Alle Zugriffe über einheitliches HTTP-Interface (GET, POST, PUT, DELETE, ) Zustandslos (Zustandsänderung durch Austausch von Repräsentationen) Unabhängig vom Betriebssystem (Client, Server) Unabhängig von der Programmiersprache (Client, Server) Nicht beschränkt: Ausgetauschte Datenformate (JSON, XML, CSV, ) Nicht beschränkt: Mehrsprachigkeit Leichtgewichtig (Vgl. SOAP-Envelope) Gut zu verarbeiten (Mobile Endgeräte) * REST = Representational State Transfer ** URI = Unique Resource Identifier

Architektur: Ablauf / Lose Kopplung Kein Bedarf an server-seitig erzeugten Darstellungen Nur Austausch von Daten Keine direkte Verbindung nötig: CMS zu GJB API

Funktionsumfang (Basisversion) Endpoints für die unterschiedlichen Ressourcen {api-url}/lookup Auslieferung von Wertelisten (z.b. Einstiegslevel, Tätigkeitsbereich, Land, Standorte) HTTP-Methoden: GET {api-url}/search Suche nach Stellenanzeigen HTTP-Methoden: GET (POST) {api-url}/search/suggest Vorschlagslisten anhand von Suchphrasen HTTP-Methoden: GET {api-url}/searchinfo Informationen zur Suche (Verfügbare Kriterien, Rückgabedaten) HTTP-Methoden: GET {api-url}/jobdetail Daten für eine einzelne Stellenanzeige HTTP-Methoden: GET {api-url}/jobabo Anlegen / Löschen von Suchagenten HTTP-Methoden: POST, DELETE, PUT, GET

Funktionsumfang Wertelisten Beispiel: lookup Auslieferung von Wertelisten Mehrsprachigkeit Rückgabe-Formate Aufrufe: GET {api-url}/lookup/country Länderliste (kanonische URI) in deutscher Sprache = Standardsprache GET {api-url}/lookup/country/lang/2 Länderliste in englischer Sprache GET {api-url}/lookup/country/lang/1.json Länderliste in deutscher Sprache im JSON-Format GET {api-url}/lookup/country/lang/2.xml Länderliste in englischer Sprache im XML-Format

Funktionsumfang - Suche Suche nach Stellenanzeigen Mehrere Ein- und Ausgabeformate verwendbar: plain XML plain JSON JSON gemäß Spezifikation durch das HR Open Standards - Consortium Komplexere, auf Stellensuche angepasste Struktur Semantische Festlegung Gezieltes Anforderung der Rückgabedaten JSON-Schema-Validierung (!) Umsetzung mit der Suchengine Elasticsearch Vorschlagssuchen Volltextsuchen Facettierte Suchen

Funktionsumfang Suchengine Suche nach Stellenanzeigen - Suchengine Elasticsearch Basiert auf Suchengine Apache Lucene Mächtige Abfragesprache (Query-DSL) Vorschlagssuchen Volltextsuchen Geo-Suche Facettierte Suchen Anbieten von Gekoppelten Suchfeldern Performant (In-Memory) Ausfallsicher (Selbstorganisierendes Cluster) Anpassbar (NoSQL / JSON-Dokumente) REST-API & API-Implementierungen für Programmiersprachen

Architektur - Verteilungsdiagramm Frontend Backend

Architektur - Verteilungsdiagramm Frontend Backend

Architektur - Verteilungsdiagramm Frontend Backend

Architektur - Verteilungsdiagramm Frontend Backend

Architektur - Verteilungsdiagramm Frontend Backend

Sicherheit - CORS Browser-Sicherheitseinschränkung: Same-Origin Policy (SoP) Javascript-Zugriff nur auf Inhalte gleichen Ursprungs (Protokoll, DNS, Port) W3C-Standard für Cross-Origin Resource Sharing (CORS) Einfache CORS Anfragen (z.b. per GET, POST): Browser sendet Header Origin (Info von welcher Seite die Anfrage kommt) Server antwortet mit Header Access-Control-Allow-Origin mit Angabe von Protokoll, Name und ggf. Port der Domäne, die Anfragen stellen dürfen Komplexere CORS-Anfragen (z.b. per PUT oder eigenen HTTP-Headern) Der eigentlichen Anfrage geht eine OPTIONS Anfrage voran (Preflight request) Neben Origin wird nach erlaubter Methode und erlaubten Header angefragt: Access-Control-Request-Method und Access-Control-Request-Headers. Der Server beantwortet die Voranfrage, indem er die beiden Werte setzt Danach erfolgt die eigentliche Anfrage (z.b. PUT / mit eigenem Header)

Umsetzungen / Beispiel-Client Beispiel-Client

Umsetzungen / Case Studies Daimler AG Produktiv seit Anfang Oktober 2014 Nutzung des Global Job Board API ( nur Daten ) Umsetzung der Suche (Maske & Ergebnisse) durch CMS-Betreiber (Adesso) Verwendung einer Geo-Suche für die Stellen in der Umgebung Verwendung der kundenspezifischen Schlüssel Job-Agent

Beispiel Jobsuche - Einbindung

Beispiel Jobsuche API Anfragen

Beispiel Jobsuche API Anfrage Werteliste

Beispiel Jobsuche API Anfrage Suche

Umsetzungen / Case Studies Deutsche Telekom AG Produktiv Oktober 2014 / November 2014 Nutzung des Global Job Board API Umsetzung der Suche (Maske & Ergebnisse) durch M&Z Geographische Darstellung der Stellen über Google-Maps Vorschlagssuche Job-Agent

Umsetzungen / Case Studies Deutsche Bank AG Produktiv bis zum Ende des Jahres Nutzung des Global Job Board API ( nur Daten ) Umsetzung der Suche (Maske & Ergebnisse) durch CMS-Betreiber (zeros+ones) Verwendung einer Geo-Suche für die Stellen in der Umgebung Getrennte Suchen für unterschiedliche Zielgruppen (Professionals, Graduates) Vorschlagssuchen (Rollen, Standorte, Zielgruppen-basiert) Job-Agent Job-HTML