Skip Main Navigation
Page Content
This event has ended

Save This Event

Event Saved

Modern Web Application Development for Java Programmers (starts 07/27/2014)

Farata Systems

Modern Web Application Development for Java...

Ticket Information

Use promotional code to access tickets.

Share Modern Web Application Development for Java Programmers (starts 07/27/2014)

Event Details

 This online Sunday training class will give you a practical knowledge of developing front and back end components by immersing into an environment similar to a real-world enterprise setup. Be prepared to download, install and master lots of various software packages that will be used at different stages of training.

We’ll spend about 50% of the time developing User Interface in HTML/AngularJS and 50% working on the server-side Java code. During the first half of the course sessions we’ll be working only with HTML, JavaScript and related libraries and frameworks. The Java-related topics are covered in the second part of this training.

This online training class will start on July 27, 2014 and will run on Sundays starting from 9AM New York Time.  Each of 10 sessions runs aproximately 3h 20 min, which includes a 10 minute break.  During the week students work on assignments (developing an online auction), communicate with each other online and meet online with the instructors for  one-hour consultation on Wednesdays. at 1:00PM NY time.  We’ll use screen-sharing software. Attendees will be able to hear and see the instructors and will communicate with them via a chat room. Between the lessons the student communicate with each other in the online forum.

 Course Outline

  • Unit 1. Creating a wireframe of the UI of the online auction. Developing and Debugging in HTML/JavaScript. Fast pace introduction to JavaScript. Intro to GIT/Github. Think mobile: Intro to Responsive Web Design. Mocking up the UI. Creating the first prototype of the auction in pure HTML/JavaScript/CSS. Configuring the auction project in IntelliJ IDEA. Styling with Bootstrap. 

  • Unit 2. Intro to Google AngularJS framework. Configuring libraries in IntelliJ IDEA. Re-creating the first two pages of the auction app. Installing NPM and Grunt. Configuring Grunt. 

  • Unit 3. Creating the second prototype of the UI with AngularJS. Scopes. Adding more tools: package management with Bower. Project scaffolding with Yeoman. 

  • Unit 4. AngularJS framework in depth. Forms, REST interaction and custom reusable components. Mocking up server side with AngularJS.

  • Unit 5. Introducing Test-Driven Development in JavaScript. Test-driven is not test-first. Creating test scripts for models, views, controllers with Jasmine.js.  JSON. REST. Creating the third prototype of the UI (consuming JSON from the server via HTTP protocol). 

The group will have a one week break for self study and catching up.

  • Unit 6. Java SE 8. Overview of the selected new features (lambda-expressions, Stream API, changes in Interfaces). Applying bulk operations on the collections of auctions items. Java build automation with Gradle. Test-Driven Development in Java. 

  • Unit 7. Java EE 7. Overview of the new features. Creating the Java EE version of the server-side auction (JAX-RS, CDI). Intro to WebSockets (WebSocket API, JSR-356). Pushing the auction data to the client using WebSocket.

  • Unit 8. Intro to Java Messaging. JMS 2.0. JNDI. Bringing together REST, JMS, and WebSockets in the Auction application.

  • Unit 9. Intro to Spring Framework 4. Part 1. Dependency Injection, MVC, Boot. Replacing the Java EE based Auction with the Spring Framework's  Auction. 

  • Unit 10. Spring Framework 4. Part 2. Bringing together REST, messaging, and WebSockets usnig Spring framework in the Auction application. Integration with the auction UI.  


Attendees should plan on committing about 15-20 hours a week for studying and working on the assignments from this course. We’ll split the class into small teams to work on the assignments during the week, so your contribution is required.

Attendees must know basic HTML tags (see ).

We’ll be using Git version control system during this course. To get familiar with Git and GitHub watch our training video before this training starts.

Attendees must have a working knowledge of core Java, and understanding of Java EE technologies.

Each attendee has to have a modern computer with plenty of disk space (4+ GB of RAM is recommended).

Having a decent Internet connection (more than 4Mbps for download) is a must.


This course is taught by three instructors who are practitioners employed by Farata Systems:

  • Yakov Fain - Co-founder of Farata Systems, the IT consultancy. Java Champion. Organizer of thePrinceton Java Users Group. Authored and co-authored a number of technical books on programming. Yakov presented on various international conferences on Java and JavaScript related topics.

  • Viktor Gamov - Lead software developer in Farata Systems. Helps financial companies with various Java and HTML5 projects. Co-organizer of the Princeton Java Users Group. Co-author of the O’Reilly book on Enterprise Web Development. Viktor presented on various international conferences on Java and JavaScript related topics.

  • Anton Moiseev - Lead software developer in Farata Systems. Specializes in developing e-Commerce applications. Enjoys everything HTML5-related. Authored and taught trainings on developing Web applications with Ext JS framework.

Frameworks, Tools and APIs

During this training we'll be using the following software tools and technologies:

Front end

Middle Tier


  • Git, GitHub 

  • IntelliJ IDEA IDE Ultimate. 


  1. I’m a professional programmer, but have never actually worked in Java. I took some classes both in SE and EE, worked though several Java books. Would it be enough?

    We don’t know. It depends on your ability to learn new material. If your Java is a little rusty, start watching Java video lessons by Yakov Fain - they are being published weekly.

  2. I use Eclipse IDE. I’m currently taking Intro to Android Programming and would prefer to keep my existing setup.

    In this training we use IntelliJ IDEA IDE as it has good support of both JavaScript and Java. All instructions will be provided for this IDE only. Instructors will not be addressing issues related to Eclipse IDE.

  3. What other software do I need to have installed on my laptop?

    We’re providing instructions for the software required for each lesson as we proceed.

  4. Are we starting JavaScript practically from scratch?

    Yes, but in a fast pace.

  5. How much "extra help" will be available if I’d be having a trouble with something?

    Students communicate with each other by posting questions/answers in the forum. Instructors are monitoring this list too. Also, there is one hour consultation time between the lesson where instructors answer questions.

  6. Do I need to know GIT for this course?

    you do, if you're planning to submit homeworks. Please watch this video to get familiar with GIT and GitHub.

  7. I’m still not sure if I can absorb all these materials within 10 weeks

    This is an intensive training that’s targeted busy professionals who need to master new software in a fast pace. If you can’t commit 15-20 hours a week for studying, do not enroll as you’ll be wasting your time and money.

You can also request this training to be conducted for your organization online. Just email you inquiry

Return Policy 

Farata Systems runs this training.  If you purchased paid support, but changed your mind before July 1, 2014 you'll get full refund . After that no money is returned, but you can apply this amount toward any future trainings by Farata Systems.

Farata Systems is a consulting and product company, which employs software professionals specializing in development of enterprise Web applications with HTML5, JavaScript, Java, and Dart. For more details please visit

If you have more questions send us an email at training @

Have questions about Modern Web Application Development for Java Programmers (starts 07/27/2014)? Contact Farata Systems


Farata Systems

Farata Systems is a leading IT consulting company providing enterprise-wide IT solutions specializing in the web applications developed with the Angular framework and Java. 

  Contact the Organizer

Please log in or sign up

In order to purchase these tickets in installments, you'll need an Eventbrite account. Log in or sign up for a free account to continue.