Beschreibung
Für unseren Kunden in Frankfurt am Main suchen wir einen Agile Software Engineer (m/w/d) Java.
Aufgaben:
Programmierung/ Refactoring technischer Komponenten in Applikationen auf Basis der genutzten Technologien (Java, JSP, CSS, TypeScript, etc.) inkl. dazugehöriger Schnittstellen, Module und entsprechender Datenbanken
Entwicklung, Umsetzung und Aufbau einer Testarchitektur für automatisierte Tests mit Hilfe von Unit Tests, Integrationstests, Akzeptanztests und Mockobjekten
Extreme Programming Techniken in die Sprints einbringen und vorleben
Sicherstellung, dass fertige Software Inkremente nach jedem Sprint gemäß Definition of Done geliefert werden können
Teilnahme an allen Scrum relevanten Meetings
Beteiligung bei der Entwicklung und dem Einsatz von agilen Schätzmethoden
Know-how Transfer im Team
Mitgestaltung von Sprint Planning und Review Meeting
Mitgestaltung beim Design neuer Komponenten
Beheben von Fehlern in den Applikationen / Komponenten
Steuerung und Messung der Qualität der Software durch Auswahl und Einsatz geeigneter Metriken
Dokumentation der technischen Komponenten
Evaluierung von neuen Technologien und Übertragung von Agilen Software Engineering Patterns auf diese Technologien
Präsentationen zu technisch komplexen Themenstellungen
Teilnahme an Communities of Practice
Muss-Anforderungen:
Sehr gute und mehrfach praxiserprobte Java- /JavaEE-Kenntnisse
Sehr gute und mehrfach praxiserprobte Kenntnisse in der Webentwicklung mit JSP, HTML, CSS, JavaScript
Gute und mehrfach praxiserprobte Kenntnisse in der Webentwicklung mit jQuery und TypeScript
Gute Kenntnisse in testgetriebener Entwicklung, Continous Integration, Testautomatisierung und verteilter Versionskontrolle (Git)
Methodische Kompetenz für Testing (Test Driven Development)
Erfahrung mit dem Framework Cucumber
Erfahrung mit der Entwicklungsumgebungen IntelliJ
Erfahrung mit den Build Management Tool Ant und Maven wünschenswert
Erfahrungen mit dem Persistence Framework PFW
Erfahrungen mit Legacy Code
Erfahrungen mit Edifact Schnittstelle
Einsatz von regelmäßigem Refactoring
Pair Programming, Code Reviews
Nachweisliche Erfahrung mit agilen Teams (z.B. Scrum-Team)
Verständnis für die Fachlichkeit und enge Abstimmung mit den Teamkollegen und dem Product Owner
Nachweisliche Erfahrung im Umgang und Arbeiten mit komplexen Software-/ IT-Systemen
Gute analytische Fähigkeiten
Eigenverantwortliches, organisiertes Handeln
Hohe Teamfähigkeit und Kommunikationsstärke sowie ausgeprägtes agiles Mindset
Soll-Anforderungen:
Idealerweise Erfahrungen im Umfeld Bahn/ DB Vertrieb / Bahn-Buchungssystemen
Offenheit gegenüber Veränderung
Ergebnisorientierung
Wünschenswert wäre Erfahrung mit der Integration des Frameworks in den Entwicklungsprozess