Fyodor Yemelyanenko
Verified Expert in Engineering
APIs Developer
Khabarovsk, Khabarovsk Krai, Russia
Toptal member since December 28, 2020
Fyodor is a seasoned full-stack developer with over 15 years of experience in IT and in-depth knowledge of JavaScript, TypeScript, React, C#, .NET, and related technologies. He specializes in enterprise software development, large-scale IT infrastructure maintenance, team leadership, and direct management and is known for his self-motivation, discipline, and precision. Fyodor's expertise is further demonstrated by his 10,000+ reputation on Stack Overflow, reflecting his outstanding skills.
Portfolio
Experience
- JavaScript - 7 years
- CSS - 6 years
- C# - 6 years
- APIs - 6 years
- .NET Core - 6 years
- TypeScript - 5 years
- Redux - 5 years
- React - 5 years
Availability
Preferred Environment
Visual Studio, Windows, Visual Studio Code (VS Code)
The most amazing...
...project I've developed is a full-featured task management application based on React, TypeScript, MongoDB, and .NET Core.
Work Experience
Senior Full-stack Developer
CaseCtrl
- Created components library based on Chakra UI in Storybook to be reused in the project. The library included basic components, like buttons or form inputs, and composite components, like tables and responsive tabs.
- Added highly customized calendar based on React Big Calendar. It displayed events in different time zones, allowed drag-and-drop events (using React DnD), and had custom event cards.
- Created dozens of API endpoints with ASP.NET Core (C#) that queried data from MongoDB, processed it, and sent it back to UI or update DB.
- Developed most of the new full-featured SPA that was built from scratch. The new UI was created in half a year and pushed to production.
Full-stack Developer
Open Retail
- Extended the SolidCommerce primary app with new features. Added a ShipNow UI functionality that allows merchants to split orders into several packages, select the best shipment rate from several carriers, and print shipping labels.
- Introduced TypeScript and Storybook to the project, which increased the velocity of UI components development.
- Upgraded the project from React 16 to React 17 and from Material UI 4 to Material UI 5.
- Configured the Docker Swarm cluster for deploying Azure Function apps on-premise. Added TFS build and release pipeline for Dockerized Azure Function apps.
- Developed Azure function apps using C# and .NET Core, which are used as API to get data from the SQL Server DB.
- Contributed to developing the React Native mobile app, which has some features of the main web app, including inventory addition, depletion, and checks.
Volunteer Software Engineer
Material-UI
- Solved several bugs. All had been accepted to the Material-UI codebase.
- Extended the types of typography props to accept custom component props.
- Created a list of pull requests. They can be viewed here: https://github.com/mui-org/material-ui/pulls?q=is%3Apr+author%3Afyodore82.
Full-stack Software Developer
Nevada, LLC.
- Designed and developed a job board SPA, including the database, the back end, and the front end. Built the database with SQL, the back end with C#, EF, and .NET Core, and the front end with Material-UI, Redux, React, and TypeScript.
- Created and developed a task management SPA, including the database, the back end, and the front end. I built the front end with React and Redux, the back end with C# and .NET Core, and I used MongoDB for the database.
- Established an Azure DevOps environment for all projects, including Git and CI/CD pipelines, and deployed the websites to Azure.
- Created sophisticated reports in Excel with data extracted from a REST API endpoint, modified with Power Query M, and presented to users using PivotTable.
- Automated the hiring process using Power Apps and Power Automate. Created Power Apps forms embedded in SharePoint lists for applicants and then used Power Automate to automate applicants' approval and load their data to a third-party HR system.
Software Engineer
Freelance Agency
- Solved bugs in Aurea CRM using JavaScript on front end and C# and C++ on the back end.
- Fixed bugs in Exinda. Debugged in Linux kernel modules, iptables custom targets, and C++.
- Achieved the "five bugs in a week" goal in two months—the same goal attained by engineers who worked on the project for more than a year.
- Worked in a scrum environment with daily stand-ups and Jira backlog.
IT Manager
Nevada LLC
- Managed three people supporting end users' PCs, 20+ Windows Servers, 5 Exchange Servers, and 10+ Mikrotik routers.
- Created a project of a private network for over 30 retail shops with primary and backup network channels. Used BGP for dynamic routing.
- Managed the upgrade to the latest Microsoft Exchange Server version for 1,000 mailboxes.
- Created an Office 365 hybrid environment. Connected the local Active Directory to Azure AD using AD sync for SSO. Enabled MS Teams for all company users.
Partner Technology Strategist
Microsoft
- Managed several partner-engineering teams: suggested the right engineers, created Microsoft certification plans, first leads, and integration projects.
- Led the partner-engineering teams in the deployment of the first Microsoft cloud solutions, 400+ Office 365 seats in 2012‐2013. Office 365 was a brand-new technology for customers in the regional market.
- Presented dozens of pure technical conferences with 100+ attendees on Microsoft products and technologies, including technical deep dives for IT geeks.
- Automated Excel data processing with VBA, PivotTable, and Power Pivot.
Experience
React Flexible Form Library
https://github.com/fyodor-e/react-flexible-formKEY FEATURES
• External or internal state management. Optionally store form state in the parent component or Redux.
• Form control properties (e.g., onChange, value, onBlur) can have varying signatures depending on the control.
• While it can integrate with React context, it doesn't rely on it.
• Highly customizable. Internal logic can be easily overridden.
• Support for sub-forms.
• Handle different behaviors for each submit button.
Task Management Application
- The manager was able to set tasks.
- Employees were able to track progress using percentages and by writing daily reports attached to each task.
- The manager and employees could analyze data with Excel Power Pivot.
Implementation:
- Single page application built with React, TypeScript, and Redux on the front end, and C#, .NET Core, and MongoDB on the back end.
- Data were stored in MongoDB documents (the task is a document, and daily reports were embedded documents).
- The app was deployed to the Azure website using CI and CD pipelines in Azure DevOps.
- Code was stored in Azure DevOps (Git).
ShipNow UI
- Select the number of packages to be used.
- Distribute items between packages.
- Manage package weight, dimensions, delivery address, etc.
- View and select shipping rates from several popular carriers in the US.
- Print carrier-specific package labels and slips right from UI.
New ShipNow was popular among clients and allowed the company to attain new clients.
Implementation details:
- UI was implemented with React and entirely on TypeScript.
- Critical parts were covered with unit tests developed with Jest and React Testing Library.
- ShipNow was a complicated UI with more than 500 code files.
Excel-like Editable Grid in React
- Frozen columns
- Sort by clicking on the column header
- Column auto-sizing by double-clicking on the column border
- Virtualized scroll
- Unlimited scroll for thousands of rows
- Pivot functions: display columns groups for each group by field (i.e., display quantity and storage location columns for each warehouse)
- Excel-like editing
- Undo/redo
Implementation details:
- Based on React Table with many custom additions (plugins)
- Used memoization (React memo) to increase performance
- Used lightweight grid cells, which were heavily styled with CSS for performance optimization
Education
Bachelor's Degree in Electrical Engineering
Far Eastern State University - Khabarovsk, Russia
Certifications
Node.js, Express, MongoDB and More: The Complete Bootcamp 2022
Udemy
Microsoft Certified Professional
Microsoft
Skills
Libraries/APIs
React, Redux-Saga, React Redux, REST APIs, React Testing Library, ASPX, API Development, Node.js, React DnD, Formik, MediatR
Tools
Redux Toolkit, Microsoft Excel, Excel 2013, Excel 2007, Excel 2010, Microsoft Exchange, Git, Figma, Microsoft Power BI, Jira, Microsoft Power Apps, Prettier, NPM, GitHub, Expo
Languages
TypeScript, JavaScript, C#, CSS, HTML, HTML5, C++, SQL, Visual Basic, Visual Basic for Applications (VBA), Excel VBA, SCSS
Frameworks
Redux, Material UI, .NET Core, .NET, Jest, React Native, ASP.NET, Next.js, Express.js, Swagger
Paradigms
REST, Azure DevOps, Mobile Development
Platforms
Azure, Visual Studio Code (VS Code), Docker, Azure Functions, Microsoft, SharePoint, Windows Server, Android, Microsoft Power Automate
Storage
MongoDB, Microsoft SQL Server, Databases
Other
Networking, Networks, IP Routing, Front-end, Front-end Development, Storybook, APIs, System Center, Microcontrollers, API Integration, Responsive UI, Virtual Machines, Border Gateway Protocol (BGP), Full-stack Development, Full-stack, Back-end, Cloud, Excel 365, Excel Expert, Chakra UI, Contract Negotiation, Product Evangelism, Electricity, eCommerce, Performance, React Big Calendar, React Hooks, ESLint, Monorepos
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