Golang Developer
Proftrans
- Киев
- Постоянная работа
- Полная занятость
- Golang for product development, Python for tests
- Protobuf/gRPC, WebSockets
- OS: Linux Debian (mostly). Alpine, other distributives just for Docker images and test environments.
- DB: PostgreSQL, MySQL/MariaDB, Redis
- CI/CD: GitHub, CircleCI, Buildbot
- Strong knowledge of Go (3+ years): syntax, idioms, and common patterns
- Solid understanding of engineering fundamentals including algorithms, concurrency, multithreading, data structures, design patterns, networks
- Comfortable working with Python and Bash for read/write/maintain scripts
- Experience with PostgreSQL or MySQL/MariaDB: base knowledge of SQL and practical experience with DBMS (at least one of them)
- Practical knowledge of Docker: writing Dockerfiles, working with images/containers
- Confident debugging skills: practical experience in diagnosing problems at any level (application, network, server, database, OS)
- Knowledge in computer science
- Good spoken and written English (B2+) for team communication and code documentation
- Rust/C: some of our products written with C/Rust. It would help your work if you're able to read/maintain/review code in Rust/C.
- Security & cryptography: basics of information security, symmetric/asymmetric cryptography, TLS.
- Linux: understand how application communicates with OS, difference between userspace & kernelspace, how to deal with blocking operations
- Take part in feature discussions and influence architecture/design decisions
- Build and ship new features in our core infrastructure products
- Write unit and integration tests
- Document new functionality clearly and concisely
- Share implementation examples for other engineers
- Contribute to code reviews, design sessions, and test case design
- We build applications for clients, write code for developers, and document how it all works - for both
- Everyone on the team is happy to help, but we also respect each other's time and know how to find answers ourselves
- Tech writing isn't our favourite task, but we do create solid technical documentation when needed, and we're lucky to have a tech writer to help with that
- We prefer doing things right the first time over patching things endlessly later
- We value healthy perfectionism, a sense of beauty in engineering, and a good sense of humour
- Resume review - up to 5 business days
- Test task - estimated time 3-4 hours
- Introductory meeting with the Head of development & solution engineering
- Technical interview with several team members
- Offer discussion
- Competitive compensation with a flexible and clear bonus scheme
- Paid vacation - 21 business days per calendar year
- Paid sick leaves
- Hybrid work model: this position allows for a combination of in-office and remote work as needed
- Combining technologies: hardware engineering, software engineering, cryptography, information security
- You will work with people deeply interested in security engineering, you will learn a lot
- Reasonable time budgets and an attitude to build things well - we prioritise building for decades, rather than just until the next release
- Conferences, books, courses - we encourage learning and sharing with the community. Our team members share a a lot in talks, workshops, blogs
- Public track record in the open-source aspect of our products.
Rabota