PeerStream, Inc. Go Senior Software Engineer - Networking in New York, New York

PeerStream, Inc., formerly Snap Interactive, Inc., is a dynamic, fast-paced technology company building innovative decentralized technologies that power multimedia social apps and business communication solutions worldwide. The Company is currently developing PeerStream Protocol (?PSP?), a decentralized multimedia content delivery solution building on blockchain technology. PSP will form the core of a technology platform that supports the Company?s portfolio of social video applications and the newly formed business solutions group created to serve the blockchain adoption needs of corporate clients. The Company?s app portfolio features Paltalk, which hosts one of the world's largest collections of video-based social communities, and Backchannel, a blockchain-based secure video messaging app expected to launch in 2018. The Company has a long history of technology innovation and holds 26 patents. Our environment is fun and relaxed, our products are ambitious, and our distributed teams are some of the brightest in the business.

PeerStream, Inc. is looking for a passionate and experienced Go developer to help develop, build and deploy a distributed fault-tolerant P2P platform. Though not required, this role is ideal for developers familiar with crypto protocols, blockchain technology, and keen to develop systems from the ground up.

PEER's environment is highly collaborative, and the ideal candidate will have an eye for detail and be a team player who enjoys working with others to find cutting-edge solutions to tricky problems.

Primary Responsibilities:

  • Develop, build and deploy distributed p2p systems

  • Work with core internal team and external open source community

  • Collaborate with teammates to produce protocol specifications

  • Develop and maintain interfaces for platform API

Required Experience:

  • BS/MS/PhD in a scientific field OR equivalent experience

  • Experience developing in Golang

  • Experience with implementing protocols over tcp and/or udp transport layers

Preferred Experience (Not Required):

  • Familiarity with peer-to-peer distributed system design and implementation

  • Practical knowledge on engineering successful peer-to-peer systems

  • Familiarity with cryptography, public/private key, hash functions, encryption/signatures

  • Designing, working with, and scaling distributed systems

  • Experience with the following:

  • Software solution architect with open source tools

  • Developing distributed applications

  • Troubleshooting

  • Concurrency and synchronization

  • Experience in security

  • Streaming protocols

Skills:

  • Strong problem-solving skills, ability to think fast and thoroughly

  • Comfortable working in problem domain with a high degree of unknowns

  • Excellent communication skills