My name is Kirill Protasov. Now I’ll tell you how in a year I went from being a graduate student at the Faculty of Psychology to a trainee and interface developer at React.
It was November 2016. I graduated from the bachelor degree in physics and magistracy in the faculty of psychology in Ural Federal University, I studied in graduate school. He worked as an ergonomist at a large defense enterprise - he took care that the control panels for launching all sorts of strategic pieces were comfortable. In general, engaged in engineering psychology.
But most of all I was interested in the development of interfaces. I independently studied usability, design of interfaces and development of web applications. Sometimes at work in his spare time he solved simple algorithmic problems on Codewars and freeCodeCamp . Something immediately checked in the browser console, something at home. In his free time, he taught JavaScript and did training projects at freeCodeCamp.
By the end of February, I did all the front-vendor projects at freeCodeCamp. I wanted to fight, work on real tasks, look for a job, or at least do test tasks.
I knew about Contour a long time ago: in 2016 I thought about taking a course on usability , I did a test for a designer’s job, I tried to take a course on interface design - I didn't take it.
Then I saw a junior frontend-developer junior job on the Contour website. I sent a resume, got a test task. It was an autocomplete with Contour. Guides - a collection of recommendations for designing interfaces for Contour products. For a week I made autocompet in four versions , and they called me for an interview.
I talked with the team Contour . Focus . They asked about the experience, about JavaScript, about the layout, about the desired ratio of JavaScript and layout. And ... they refused, chose another candidate, but offered to go for an internship. I was surprised because I thought that an internship was for students only. It turned out that it was not, and I agreed.
I went to the internship in the team Form Product Contour. Extern, to the steep tmlidu-frontender. Extern is the main product of the Contour, it helps companies send electronic documents to government agencies. The Form command makes an interface for filling and sending these documents. Under the hood is the engine on which the forms work, and a generator that converts the XML description of the forms into JSX files.
From this XML description ...
... it turns out this JSX markup.
There are about 600 forms in total, there are small, and there are bulky ones. The main goal is to make users spend as little time as possible on filling out and sending documents.
This year, the team has made or updated almost half of all forms.
I was offered a choice of four completely different and non-intersecting tasks. I chose one that seemed the most understandable and the hottest in terms of improving user experience.
The context of the task was this. In the current interface, the user filled out and submitted the form, then various checks took place. If there were errors in the form, the user saw their list, from which you can follow the link to the field in which there was an error. At the same time, the window with the list of errors was closed. To correct the next one, it was necessary to send the form again. "Lather, wash, repeat." In general, long and uncomfortable.
Here's how it worked before.
When I said that I would be engaged in this task, everyone was delighted: "Apparently, you will be with us for a long time." It was a big task that the team has long wanted to do.
That's what I got in the end. I added a control to check in the sidebar next to the form. Now the check takes place during the transition to this control, and immediately a list of errors appears with links and descriptions. When clicking on a link, the form scrolls to the field with an error, and a tooltip appears above the field with a hint how to correct this error.
And this is how it looks now.
In the course of solving the problem, I refactored the code, changed the hierarchy of React components to a more successful one and transferred part of the application to Redux. Any difficulties proved to be surmountable, especially with a mentor who answered any questions.
Works great even in IE.
Where to live? What is? How to get there? Now I will tell you how I figured it out. Without answers to these questions, it is difficult to decide on an internship if the intern is not a local resident, as I am.
I lived in a hostel that Contour pays for the duration of my internship. I went to work on a corporate transfer that goes around the city and stops near the hostel. I ate, ordering lunch with delivery to the floor for the whole week through the web service intended for this, and did not think about it anymore.
I went to work at seven in the morning and returned on the last transfer at half past nine in the evening. The remaining time was devoted to self-development. The schedule is free, the main thing is to cope with the tasks in time. No one forces you to work more than 40 hours a week, except domestic workaholic own desire.
On the internship there was a “zero day”, where we were introduced to the company, the “equator”, where we had fun, and the final conference to share the results. Twice a week trainee interns were held, and we knew who was doing what. The team also had daily flyers, where we told what we were working on and what we would do.
During the internship, I participated in the internal hackathon . For 24 hours in a small team, I did an internal service for interface designers. We even took a prize, and as a prize I got the book by Charles Petzold .
There were only three of us.
Two weeks before the end of the internship I was offered to stay in the team. I did not think for a long time, because in the Contour it was comfortable to grow and develop.
Now I am improving one of the internal services of our team. It is written in the functional language Elm, which is compiled into JavaScript. I was surprised that the team has such tasks, and I am pleased that I can do them.
(This article I was asked to write by the guys who are conducting a new internship. Come to us, recruitment for an internship in 2018 has already begun.)
Source: https://habr.com/ru/post/345214/
All Articles