The pandemic has incinerated distances, and all the knowledge of the world was just a click away. You won’t surprise anyone with eminent conferences online, it’s time to look for treasures in the outback.
And we are right there. For isolation, we made 6 online meetups, today we share materials from three, organized with the participation of colleagues from EPAM and Kontur. Each considered two topics:
Public contracts – how to ensure consistency.
ElasticSearch, and why you should NOT use it.
Navigation in an Android application, its cross-platform implementation.
How and why to write your own framework on iOS. Created live. (EPAM)
Augmentation of texts: how to make an elephant out of a fly.
Shorten support chat times with machine learning. (Circuit)
Further links to records and details about each.
Public contracts – how to ensure consistency:
what problems does insufficient attention to public contracts lead to;
tools (Swagger, OpenAPI, gRPC) and approaches for working with contracts at all stages of software development;
experience of using OpenAPI in our Sungero platform;
ways of versioning and testing contracts (CDC).
ElasticSearch, and why you should NOT use it:
what is ES for and what it consists of;
about the experience of using it in Directum: collecting and analyzing logs, full-text search;
how to organize a competent full-text search in Russian and not invent a rake.
+ our developments on GitHub: morphology plugin for high-quality fast lemmatization and modification of the Tika library (see what changed, see the talk). Useful if you are doing a search in Russian.
A report on iOS was presented by Igor Nabokov, an invited developer from Minsk EPAM.
Navigation in the Android application:
how navigation works, its cross-platform implementation and the problems we encountered while refactoring navigation in Directum Solo, an ECM application;
how to highlight new navigation objects, how to build deep links, how to implement them in general, how to make the iOS and Android versions as similar as possible;
looked at frameworks, disassembled solutions in C #, Xamarin with an additional short excursion into Wednesday – everyone will understand.
Custom framework for iOS:
Igor proved that writing your own framework can be a simple pleasant thing and a cool line in your resume: open-source, development automation. And development for developers is interesting.
He talked about his experience, explained why, how, how an iOS framework can be created, what problems arise, how to solve them. Dismantled by the example of the telematics library.
For practice, we took the following situation: there is a set of classes that need to be assembled into a library, for example, some kind of logger. We looked at how to make a binary framework out of this, how to add the necessary scripts to fastlane, how to create a repository in CocoaPods, how to publish CocoaPods, how to upload the binary part, for example, to s3, how then to create a new application and connect this most recently published framework.
The topic of machine learning for technical support chats was opened by Konstantin Frolov from Kontur.
We turned on the recording a couple of minutes later.
Augmentation of texts: how to make an elephant out of a fly
Do you work with NLP? Check the box where it hurts:
little labeled data;
the data is the same, and the model learns only from them, not understanding what to do when it encounters something else;
little effort and time to mark out more data.
We faced all of this while solving a problem from the NER area. And they solved them with the help of augmentation.
Reducing the duration of tech support chats using machine learning:
Konstantin Frolov told how the optimal ML-solution was developed in Kontur.
Usually the operator has several calls in parallel at work. Often, chats in which the activity stops unexpectedly, for example, the user has left, remain open. Such a chat continues to occupy the operator’s slot and interferes with the progress of the call queue.
The guys created a machine learning model that automatically detects when a dialogue can be closed and prevents chats from dragging out.
Judging by the situation, the topic of online meetups in Directum continues. All the following events will be covered at https://meetup.directum.ru/…
If you have suggestions on topics and a desire to join as a speaker – write via any channels @stalyonka or officially at firstname.lastname@example.org.
I hope they were useful to you! And we will.