Budget: 27000 UAH Deadline: 30 days
Igor, hello!
I am very interested in your project and would like to participate and contribute my share - perhaps thanks to my experience we can make your project faster, more stable, and more reliable. I love complex and interesting tasks.
I fit the requirements well:
- I have 6 years of experience in commercial development with Go, which is the foundation of my stack. Mostly on long-term projects that I maintained and expanded myself. Because of this, I automatically write code in a way that makes it easy to maintain later. I adhere to the principles of Clean Code (within reasonable limits), DRY, KISS, SOLID, and YAGNI. Inside microservices, I follow a modular architecture, use design patterns, but without fanaticism.
It's funny, but I like the approach `if err != nil` - simple and clear.
I know why channels are needed, how to use them, when it's better to use sync.Mutex, and what a race condition is.
I know that standard value passing with copying is often faster than references, I understand how garbage collection works and why it's important to monitor passed references.
I know O-notation - not perfectly, but enough to unconsciously evaluate CPU cycles for code execution.
Overall, I like this language and use it confidently.
- I have a good understanding of the principles of the network stack and its protocols. A couple of years ago, I implemented a TCP packet interception service at the network level of the system and based on them, I formed new packets, changing TTL, flag DF, Window Size, etc., to bypass OS passive fingerprinting. I wrote my implementation in Rust with gRPC to fit on MikroTik. I haven't worked closely with WebRTC, but I have experience setting up and maintaining my ICE/STUN/TURN server and understand how it works. I have worked a lot with WebSocket and Server-Side Events, implemented many Restful APIs adhering to standards, and liked the OpenAPI specification-first principle - generating server code based on YAML configuration. This way, the documentation is always up to date, which greatly simplifies the work. In addition, I have worked a lot with GraphQL and JSON API.
- I work with Docker constantly, organized work with debugging Go code inside a container deployed in Docker Compose for an environment closer to the working environment. Unfortunately, I have little experience with CI/CD, but I really want to start using it.
- I mainly use NoSQL databases, but I have also worked a lot with MariaDB and heavily loaded PostgreSQL. However, I tried to organize the database so that complex queries were not needed, but I still had to optimize them at times.
Write to me, maybe I am the person you need.