Practical Aspects of Enterprise Application Development EAR Winter Term 2017 EAR Practical Aspects of Enterprise Application Development Winter Term 2017 1 / 21
Contents 1 Speakers 2 Topics EAR Practical Aspects of Enterprise Application Development Winter Term 2017 2 / 21
Speakers Speakers EAR Practical Aspects of Enterprise Application Development Winter Term 2017 3 / 21
Speakers Petr Aubrecht Lead developer at StringData, 15+ years of experience in server-side application development, Technologies C/C++, Java, Java EE JSP, JSF Relational databases Agile Methodologies Web Services EAR Practical Aspects of Enterprise Application Development Winter Term 2017 4 / 21
Speakers Roman Kunovský Lead Java developer at Baader Computer, 15+ years of experience in Java development, Technologies Java Spring, Hibernate Relational databases Application servers (Tomcat, IBM WebSphere) Sencha ExtJS EAR Practical Aspects of Enterprise Application Development Winter Term 2017 5 / 21
Speakers Baader Computer Member of the international group Kirchhoff Datensysteme Group 120 employees (30 developers in CR) 6 locations (Mainz, Erfurt, Praha, České Budějovice, Šumperk, Bangalore) Two areas: Java (mostly automotive/individual development) Web applications Java, Spring, Hibernate, Sencha ExtJS, Tomcat/TomEE, Oracle, MSSQL, PostgreSQL We participate on projects for: Škoda Auto, SEAT, PSA, Jaguar/Land-Rover.Net Own product Poly.ERP www.bcpraha.cz Trainee program for students EAR Practical Aspects of Enterprise Application Development Winter Term 2017 6 / 21
Speakers Rudolf Vlk Software developer at DataVision, 10+ years of development experience, Technologies C/C++, Java, Java EE C# and.net Relational databases Test driven development ZK Framework, Angular EAR Practical Aspects of Enterprise Application Development Winter Term 2017 7 / 21
Speakers DataVision Small company (25 employees, mostly programmers) Two areas of expertise Vision systems quality assurance & robot guidance applications C#, HALCON, Microsoft stack, Visual Studio We participate on projects for: Volkswagen, Škoda, Michelin, SICK Information systems / web applications Java, Java EE, Spring, Angular, ZK Framework, IntelliJ Idea We participate on projects for: Creditas, SICK www.datavision.cz We re hiring! EAR Practical Aspects of Enterprise Application Development Winter Term 2017 8 / 21
Topics EAR Practical Aspects of Enterprise Application Development Winter Term 2017 9 / 21
Practical Experience with Application Development SCRUM Agile Methodologies Continuous Integration Deployment EAR Practical Aspects of Enterprise Application Development Winter Term 2017 10 / 21
Roman Kunovský Agile Methodologies SCRUM Extreme Programming Test Driven Development (TDD) Continuous Integration EAR Practical Aspects of Enterprise Application Development Winter Term 2017 11 / 21
Roman Kunovský Deployment (SEAT Germany application servers environment) Windows Server 2012 TomEE configuration repository (including WAR artifacts) TomEE deploy Agent (SEAT proprietary solution) Deployment automatic update of Windows TomEE services EAR Practical Aspects of Enterprise Application Development Winter Term 2017 12 / 21
Rudolf Vlk On trying to be Agile Be ready to compromise (when the customer is not interested) Set up feedback loops Automate everything Have a plan Don t neglect maintainability Refactoring to a good design is integral part of TDD EAR Practical Aspects of Enterprise Application Development Winter Term 2017 13 / 21
Java EE vs. Spring Standardization vs Dynamic evolution Security, caching, scalability Full Java EE vs Java EE Web Profile EAR Practical Aspects of Enterprise Application Development Winter Term 2017 14 / 21
Roman Kunovský Used Spring modules Core Container AOP and Instrumentation Data Access/Integration Web Test Security EAR Practical Aspects of Enterprise Application Development Winter Term 2017 15 / 21
Rudolf Vlk Seems mostly like a choice of personal preference Both are leaky abstractions Java EE customized security is a pain Java EE (theoretical) portability vs Spring s lock-in Spring Boot and Microservices EAR Practical Aspects of Enterprise Application Development Winter Term 2017 16 / 21
Alternative Technologies Alternatives to PostgreSQL Eclipselink (JPA) Spring REST API ReactJS EAR Practical Aspects of Enterprise Application Development Winter Term 2017 17 / 21
Roman Kunovský EAR Practical Aspects of Enterprise Application Development Winter Term 2017 18 / 21
Rudolf Vlk PostgreSQL: Oracle, MySQL, MongoDB (NoSQL) JPA: JOOQ REST API: GraphQL, JSON API, grpc ReactJS: ZK Framework, Angular, WebAssembly EAR Practical Aspects of Enterprise Application Development Winter Term 2017 19 / 21
Open Discussion EAR Practical Aspects of Enterprise Application Development Winter Term 2017 20 / 21
Java in the age of NodeJS EAR Practical Aspects of Enterprise Application Development Winter Term 2017 21 / 21