High-load services developer. 7 years experience. Expert of microservices philosophy and methods of working with distributed systems. Extensive experience with video. Real-time and Timeshift. Expertise in the design and development of systems and software for high-load data services. Good OOP skills, TDD skills, Agile methodologies; cross-functional skills in Business Analysis.
[email protected]
+7 (977) 302-1878
Moscow, Russian Federation
Microservices: Akka, Elastic, Docker and Kubernetes, Consul, RabbitMQ, Reflect, AWS X-Ray.
Java: Netty, Spark Java, Jetty, Junit 5
Datastores: MySQL/NoSQL, Oracle 12, RethinkDB, SqlLite, Realm
Html + Js : html 5 and vanila Js.
Android: Java 7/8, RxJava
iOs: Swift 3.2, RxSwift.
Datastores: SqlLite, Realm
Using git with git-flow principles. The comments in the code, Jdoc and description in Confluence.
First of all Trello, define it as best solution. And Jira, TargetProcess.
Dependency manager for backend: Maven, Gradle, NPM.
Dependency manager for frontend: Gradle, Cocoapods, Carthage.
Config management: first of all - Consul with cfg4j, define it as the best solution. At some projects - ZooKeeper and etcd.
Datastores: PostgreSQL, MySQL, Elastic and RethinkDB.
Messaging/queueing systems: RabbitMQ, Apache Kafka.
Caching systems: Memcached, Apache Ignite, Hazelcast.
Metrics/events-gathering services: New Relic, Graphite, Elastic, instana, Loggly.
Binary asset services: Amazon S3
First of all - TeamCity and Bamboo, define its as the best solutions as continuous integration tools. Jenkins. For configuration managment - Chef and Ansible.
Use to perform stateless processes - Akka microarchitecture. Scaling services by Docker with Kubernetes. Port bind implement by the jetty/Netty framework.
First of all use for concurrency tasks Akka Actors, as best solution. Standard Java Threads (Callable and Future) with Guava EventBus for event management, with all Java 8 concurrency futures (like example new executors)
For monitoring i use first of all - Elastic + Graphana, define it as best solution then Graphite. And New Relic solutions (for example "New Relic browser metrics") and Zabbix.
For tracing - AWS X-Ray.
For logging - rdd logging from services by Apache Flume to HBase/Hadoop HDFS.
CityAds Data Performance Research. Lead Developer of R&D deportment.
Responsibilities: The development of mobile SDK, the creation of high-loaded services and analytical systems, systems of content generation. Developed:
Webinar.ru. Developer of R&D department. Software developer full system development lifecycle experience, including designing, developing and implementing unit test.
Responsibilities: Development of the largest online high-load project in Russian Federation. Developed:
Alpari.ru. Developer of Department of interactive services development.
Responsibilities: Developing client applications of the company. The creation of specialized applications for company websites.
Developed:
Embria, TimeZero and Mail.ru Group. Game developer.
Responsibilities: process organise team development applications and development tools (framework) for applications.
Developed:
MGRI RSGPU. Phd.
Institute of modern technologies of geological exploration, mining and oil and gas business.
MGRI RSGPU. Msc.
Faculty of technology intelligence and development.
The Department of modern drilling methods.
MIREA. System engineer.