Profile Picture
0 jobs

Senior Full-stack developer

Michael Frank , Charlotte, United States


Experience

10 - 14 years

Skills

App and web development Mysql Html5 Javascript Wordpress + 9 more

I'm offering

In short, I could build a web, mobile or desktop application using Serverless Computing, conforming to the principle of the least privilege under version control for each function (Pay-per-use AWS or Google Cloud infrastructure that scales indefinitely).

When I code either the Frontend or Backend solutions, the experience I have defined the prioritization of the characteristics for the product:

1. Simplicity (readability).
---- All frontend services I create are event-driven. Therefore, the infrastructure is typically FaaS or in rare cases BaaS.
2. Technical scalability
---- Comparing to microservices, where parts are connected to each other, FaaS development allows to create completely independent functions. It is easier to manage and to make changes as you split the functionality into much smaller blocks.
---- FaaS can scale indefinitely, the same limits as AWS and Google Cloud infrastructure.
-------- If you have 0 customers today, your bill is $0, comparing to microservices, where you have to have at least one container running $25/month. A typical project is eight containers.
-------- If you have a billion customers tomorrow, FaaS auto scales horizontally to handle the new load automatically, with the pricing of an optimized solution close to $2-5/million requests for ALL infrastructure combined.
3. Size
---- The size of the bundled assets need to be small as it affects the operating costs.
---- I have created more than tens of different custom Webpack solutions for mostly all types of different cases to minimize and optimize the bundles, including code splitting, tree shaking, finding the most appropriate target for the JavaScript (or TypeScript transpilation), image minification and lazy-loading (PNG, JPEG, SVG, etc), service workers, manifest, etc.
-------- And even the process for updating the resources on a file hosting to upload only those assets that have changed.
-------- I have worked on many projects, every time trying to find something else to improve, so the solutions are extremely well optimized.
4. Performance
---- I write in plain TypeScript (if you don't know TypeScript, it is the same JavaScript plus type safety to increase stability).
---- When I optimize for performance, I prefer my own solutions as ready-to-use libraries are solutions for everyone and, therefore, typically suboptimal to your particular case.

I create SPAs, conforming to PWA standards, and frontend plugins using http://*********.** and http://*********.**

I follow Component Driven Development (CDD) together with Visual Test Driven Development.
For that, I use Jest and Storybook.

It is important to start by developing UI elements and afterwards, combine the UI elements to form a View (page).

When writing styles, I use SCSS that compiles to CSS3.
I follow the BEM methodology to make sure that class names cannot intersect and I can plug them in to any place without having to modify the code.

The Desktop app development involves also Electron, but the overall process is the same. That is the reason why it is easy to convert my solutions to a desktop app.

I have similar approaches but other tools in Mobile app development.

?Backend:
I am a strong proponent of Serverless Computing, who has extensive experience with FaaS and BaaS, automatically generating IAM rules and cloud services, and conforming to the principle of the least privilege for each function/service.

I create RESTful APIs covering them in tests and preparing for adoption by frontend devs via password-protected documentation over web endpoints where the frontend devs are able to observe and interact with Swagger UI that conforms to the OpenAPI 3.0 specification.

I have developed all of the types of the GraphQL servers in Golang and http://*********.** (production solutions of under 100KB).

I automate deployments using Serverless framework via AWS Cloud Formation and Google Deployment Manager configs, so that it takes one CLI command to create cloud services and IAM roles.

Project management/Tracking
I am used to daily reporting and knowing that communication is the key, I constantly try to improve clients' experience.

I know best methods in version control and I conform to them, doing PRs, releases, keeping multiple branches, and using stashes.
---- I have automated branching & PR requests, as well as connected bots for notifying about changes in corporate chats. The code that I write goes through automatic code-styling processing that improves readability and overall quality of the provided work.
I use: ESLint, TSLint, Stylelint (SCSS & BEM), and Prettier for all automated code formatting needs.

Respectfully,

Markets

United States
United Kingdom (Remote only)
France (Remote only)
Germany (Remote only)
Lithuania (Remote only)
Denmark (Remote only)
Norway (Remote only)
Sweden (Remote only)
Finland (Remote only)

Language

English
Fluently

Ready for

  Smaller project
  Larger project
  Ongoing relation / part-time
  Full time contractor

Available

Typically available right away



Michael's reviews

Michael has not received any reviews on Worksome.


Contact Michael Frank

Worksome removes the expensive intermediaries and gives you direct contact with relevant talent.

Create a login and get the opportunity to write to Michael directly in Worksome.

Continue



38100+ qualified freelancers
are ready to help you

Tell us what you need help with
and get specific bids from skilled talent in Denmark