Software Engineer - P2P Systems
PRAGMATIKE
1 month ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Remote
Tech stack
HTML
Java
Agile Methodologies
Amazon Web Services (AWS)
Application Lifecycle Management
Software Applications
Azure
Code Review
Computer Programming
Continuous Delivery
Software Design Patterns
DevOps
Hypertext Transfer Protocols (HTTP)
Internet Protocol
JSON
Open Source Technology
Peer-To-Peer (P2P)
Performance Tuning
Scrum
System Programming
TCP/IP
XML
Data Logging
Multithreading
Google Cloud Platform
Backend
Kubernetes
Information Technology
REST
Docker
Microservices
Job description
- Design and develop scalable, distributed, server-side software applications and microservices.
- Develop and optimize mission-critical software with a strong emphasis on system programming and performance tuning.
- Implement robust peer-to-peer (P2P) communication solutions P2P experience is a MUST.
- Contribute to and/or build projects using libp2p or similar P2P libraries.
- Ensure cross-platform functionality and application compatibility.
- Collaborate within an Agile Scrum team to define and prioritize backlog items, and proactively identify risks and dependencies.
- Create clean, maintainable, and reusable code.
- Optimize solutions for performance, reliability, and security.
- Establish and enhance infrastructure, including deployment pipelines and observability tools.
- Work with multi-cloud environments solid experience in AWS, Azure, and GCP is highly desirable.
- Participate actively in the application lifecycle management.
- Engage closely with product and design teams to grasp end-user requirements thoroughly.
- Conduct thorough code reviews and mentor other engineers.
- Champion best engineering practices and high-quality software craftsmanship.
Requirements
If you're excited about working on ambitious projects in a dynamic and flexible environment, we'd love to hear from you!, * Minimum 5-6 years of experience as a Senior/Lead Backend Developer.
- MS degree in Computer Science or a closely related technical field.
- Demonstrated technical proficiency in Go and/or Java.
- Strong understanding of design patterns and multi-threaded programming.
- Proven experience with P2P architectures ideally in production environments.
- Solid grasp of internet protocols and technologies: TCP/IP, HTTP, HTML, XML.
- Familiarity with service-oriented designs and methodologies: REST, JSON, etc.
- Ability to build well-structured, secure RESTful APIs and understand their client-side implications.
- Deep understanding of Agile development principles and the Agile Manifesto., * Hands-on experience with container orchestration (Kubernetes) and Docker.
- Experience in infrastructure engineering and managing production environments.
- Skilled in using tracing/logging systems to rapidly diagnose production issues.
- Proven track record building business-critical, large-scale, high-availability systems.
- Strong background in multi-cloud deployments (AWS, Azure, GCP).
- Experience with libp2p, decentralized systems, and related startups or open-source projects.
- Familiarity with continuous delivery pipelines and DevOps practices.