📜 ⬆️ ⬇️

The results of the selection of the school Android-developers in Kazan


More than two months ago, we announced the selection of a school for Android developers in Kazan . During this time, we received 575 applications for participation and 70 completed test tasks (an incredible figure, considering that the task was not easy, and almost 40% of those who submitted an application had no experience in developing for Android).


Unfortunately, this popularity has a downside - we could not take many of the participants who completed the test task at a good level and could cope with schooling. The competition was very high, and we are very pleased to congratulate those who went through all the obstacles!


As a result, we selected 15 people:


  1. Iskandar Shabaev
  2. Arthur Badretdinov
  3. Denis Mikhailov
  4. Konstantin Rodionov
  5. Aydar Farrahov
  6. Azat Galiullin
  7. Yuri Permenko
  8. Sergey Mikevich
  9. Arthur Yelzhanov
  10. Alexey Antonchik
  11. Arkady Sharapov
  12. Olga Telezhnikova
  13. Sergey Ryabov
  14. Yaroslav Sudnik
  15. Anton Kazakov

By the way, the school has a very wide geography - people from 6 cities and 2 countries take part in it!


Test


Now more about how the selection process took place. The course was initially aimed at teaching participants who already know how to make client-server applications for Android, to do it better in terms of architecture. Therefore, participants were encouraged to implement a simple client-server application that allows you to view weather information in different cities. The application meant at least one server request and 2-3 screens (a list of cities, a screen with a separate city and a screen with the addition of a new city). More detailed test requirements are described in the document .


The test task was tested on two key components: first, from the user's point of view, that is, various design decisions, bad moments, wrong behavior and crashes. After that, the application code was already studied, we identified unsuccessful or erroneous solutions, and also suggested options for improving the code and simplifying the implementation. Estimates for both of these components were equivalent; they added up to form a general result.


Each participant who completed the test task received a detailed feedback from us indicating all errors and suggestions for improvement. We also compiled a list of inaccuracies and errors that were encountered in test tasks especially frequently. In the same document, we indicated recommendations for further study for participants who could not get to school. We are trying to fulfill the principle of openness in all resources right now and hope that you will find something useful in this document.


We were also asked to share samples of completed test tasks. As such a sample, I would like to highlight the application of Iskandar Shabayev, which is done at a very high level both in terms of using the application and in terms of code. This does not mean that only with such an assignment it was possible to go to school - it could have been done and much less, but this is a project to which you can equal yourself.


Course program


After discussion with school participants, we adjusted the course so that it was as interesting and useful as possible. Now the course plan is as follows:


  1. Introduction to the architecture of applications. Problem re-creation Activity.
  2. Classic A / B / C patterns for client-server communication.
  3. RxJava framework and its use in Android.
  4. The principles of Clean Architecture and their application in the construction of application architecture.
  5. MVP pattern.
  6. Unit testing of Android applications.
  7. UI testing of Android applications.
  8. The DataBinding framework and its use in the MVVM pattern.

Also, the participants expressed many wishes, so we will hold small additional lectures on the following topics:


  1. Backpressure problem and how to solve it.
  2. Google Agera framework for building application architecture.
  3. Mosby framework for building application architecture.
  4. TDD (test-driven development) methodology.
  5. Dagger2 as a library for implementing the principle of Dependency Injection.

And now the most important thing, after the end of the course on September 24, during the week all presentations, lectures in text form and code examples on all the voiced topics will be made available to all who wish! Follow the news in the blog of the company e-Legion or the group GDG Kazan in VK.


')

Source: https://habr.com/ru/post/308700/


All Articles