Вам нужно пройти практикумы:
- (для разогрева) "Introduction to Interactive Programming in Python", Rice University, на Coursera.org; (или аналогичный там же, или что-то по питону на Udacity.com, Udemy.com etc.)
- "Introduction to Programming in Java" (всего 4 главы, но десятки и сотни примеров, заданий и выполненных заданий от топ-кафедры по программированию)
Курсы на Coursera.org:
- "Algorithms, I", Princeton University
- "Algorithms, II", Princeton University
- "Introduction to Databases", Stanford University (он же на edX.org)
- "Introduction to Computer Networks", University of Washington
- (опционально) "Natural Language Processing", Stanford University or Columbia University
- (опционально) "Artificial Intelligence Planning", University of Edinburgh
Курсы на Udemy.com:
- "Java For Complete Beginners"
- "Java Multithreading"
- "Java Design Patterns and Architecture"
- "Java Swing (GUI) Programming: From Beginner to Expert"
- "Java Servlets and JSP"
- "The Java Spring Tutorial"
А также изучите построение клиент-серверных приложений на основе Netty (см. netty.io/wiki/).
Если план сработает, дайте знать через полгода!
Богдан