Nikolai Afanasiev
Verified Expert in Engineering
Front-end Developer
Remchingen, Baden-Württemberg, Germany
Toptal member since January 14, 2022
Nikolai has more than 15 years of experience in C#, Java, and JavaScript development under Linux, Windows, and mobile Android platforms. He's keen on Java, C#, TypeScript, and React, and he has deep OOP, design, and architecture knowledge, together with CI/CD expertise, including Docker and Kubernetes. Nikolai has contributed to projects in industries ranging from banking to internet and automotive branches, and he is presently looking to work on web, desktop, or mobile applications development.
Portfolio
Experience
- Java - 20 years
- SQL - 15 years
- C# - 15 years
- Android Studio - 7 years
- HTML - 7 years
- JavaScript - 5 years
- React - 2 years
- TypeScript - 2 years
Availability
Preferred Environment
WebStorm, IntelliJ IDEA, Visual Studio .NET, Kubernetes, Git, Bitbucket, GitLab
The most amazing...
...project I've developed is an Android app for a third-party media player that was more popular than the original one from the media player producer.
Work Experience
Senior II Software Developer
Microchip Technology
- Redesigned a desktop Java UI tool for microchips configuration by splitting legacy code into the layered structure, giving better possibilities for parallel development and testing. As a result, the number of project issues was drastically reduced.
- Developed a full-stack SPA application prototype to access and configure HDD controllers. The back end was built on TypeScript, Nest.js, and Node.js, and the front end used React, TypeScript, and Material UI.
- Managed a Kubernetes cluster to speed up CI builds by parallelizing build jobs on several build servers. Took part in the development process definition and implementation to provide developers with a modern environment: Git, GitLab, and Kubernetes.
- Built the WPF C#.NET part of the car network—MOST, CAN, Lin, FlexRay, and Ethernet—sniffer tool. Developed a high-speed database to store and filter network traffic, making UI performance ten times faster.
- Created Java, C++, and C# code generators to be jointly used with the main product of our company, which led to additional sales of the main product together with new generators.
Software Developer | Project Leader
SaxoSoft Representative Office of Saxo Bank A/S Denmark
- Developed a chat tool for the sales department to communicate with online clients.
- Built a GUI tool and the server business logic part of the internal bank tool to automatically process incoming and outgoing funds transfers. That gives customers the ability to transfer money over the wire without manual bank clerks' work.
- Created the back end for a service subscriptions framework and the back-office part—mainly billing, booking, and configuration—of service subscriptions.
Software Consultant
Raimist Software, LLC
- Built a web-based fine payment system on Java. It has been designed to get penalty data from the police database over a REST API, send and receive clients' SMS, and perform fine payments using clients' credit card info.
- Provided ActiveX, JavaScript Web development, bug fixing, and maintenance of patient financial services, health information management, and human resources to commercial healthcare products.
- Performed high-quality system testing after each code change to minimize the risk of bugs in the healthcare system's production.
Project Leader
Reksoft Co. Ltd.
- Developed an automated tool for phone stations testing. It performed scripted tests and stored results in the MSSQL database. After that web server, a front end was done to generate different reports.
- Built a web-based license manager written on JSP that used an Oracle database.
- Created a data synchronization tool to synchronize source code between different team members located in other locations.
Project Manager | Network Administrator
Liniya Svyazi JSCo
- Configured and maintained local Windows Network and Linux FreeBSD servers.
- Designed and supported all interned-related services like firewalls, mail systems, web services, FTP servers, proxy servers, and authentication/authorization servers.
- Designed and developed a web-based billing system to manage ISP clients.
Experience
Full-stack Web App to Monitor and Configure HDD/SSD Adapters
I was responsible for designing and prototyping the back-end and front-end parts of that app. There were two variants of the back end in Python and Node.js with the same REST API, and I owned the entire design and development of the Node.js one using TypeScript and Nest.js. Similarly, there were two variants of the front end—the web built in React and the desktop version in Java—,and I fully designed and developed the React front-end part using the TypeScript, Material-UI, and Next.js framework.
Currently waiting for a decision on the development next steps, this app will be used in large data centers like Google or Microsoft clouds.
Full-stack Funds Transfer Application for a World Wide Bank
http://www.saxobank.comThe UI part was implemented as a standalone web app to allow users to enter all necessary data. The server part—done as a service— used a specialized bank API for interbank fund transfers.
I was entirely responsible for the project management of a group of three developers.
Android Media Player App for Dune HD
As an owner of this application, I did practically everything, including designing, implementing, promoting, advertising, and monetizing this app. The app was designed and implemented using a device-independent message bus framework easily customizable to use with other devices.
As a result, other applications were developed on top of this framework for different device types. The application was written on pure Java using Android support libraries and then partially rewritten on Jetpack. I also created several forums on the internet to support users and get feedback and additional requirements from them. Users reported some bugs, so I had to fix them and redeploy the app asap.
Code Generator for an Embedded Car Framework
I developed C#, Java, and C++ code generators using C# M4 code generator templates.
Education
Master's Degree in Computer Science
Leningrad Electrical Engineering Institute (LEEI) - Saint Petersburg, Russia
Certifications
Sun Certified Programmer for Java 2 Platform
Sun Microsystems
Skills
Libraries/APIs
React, Retrofit, Retrofit 2, jQuery, Node.js
Tools
IntelliJ IDEA, Visual Studio .NET, Git, GitLab, Microsoft Team Foundation Server, TFS, Android Studio, WebStorm, Bitbucket, Apache Maven, NuGet, GitLab CI/CD, Android Jetpack
Languages
Java, XML, SQL, C#, JavaScript, Perl, TypeScript, C#.NET, M4, HTML, C, Tcl/Tk, CSS, C++, VB, Python
Frameworks
Android SDK, .NET, .NET 4, Windows Presentation Foundation (WPF), ActiveX, NestJS, Next.js, Material UI, Express.js, Bootstrap
Paradigms
REST, Mobile Development
Platforms
Oracle, Unix, Android, Kubernetes, Mobile, Firebase, JEE
Storage
Microsoft SQL Server, MySQL, PostgreSQL, Databases, MongoDB
Other
Architecture, Code Generators, APIs, Front-end, Back-end, Leadership, CI/CD Pipelines, IT Consulting, Mobile Applications, Mobile App Development
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring