AMA with Derek Yoo and Tim Baldwin from PureStake

Every week, we hold an AMA on our invite-only ecosystem slack channel, to foster conversations geared towards building trusted infrastructure for the borderless economy. If you would like to contribute to growing the Algorand ecosystem, follow the instructions at the bottom of this article and join our core team, partners, ambassadors, and top community members as we share innovative ideas, feedback, and updates on all the different facets of the Algorand project.

______________________________

AMA Transcript | October 16, 2019

Introduction 

Daniel: 

Let's welcome our guests from PureStake; Meet:

Derek Yoo, CEO of PureStake with a 20 year experience as senior as-a-service technology entrepreneur! Derek served as CTO and co-founder for www.fuze.com -- a cloud based communications platform. Under his guidance Fuze became a firm with 700 employees and $150 Million run-rate.


Derek is joined by Tim Baldwin who is VP of Engineering for PureStake. Tim brings with him more than 20 years experience as a leader of software development and DevOps teams. Prior to PureStake, Tim was the VP of Engineering at Computer Services Inc., building a compliance API-as-a-Service and supporting customers such as Google, eBay, Stripe, Facebook, Priceline, Uber, BB&T, Sungard, Huntington, and Cybersource (Visa)

Thank you for making time guys!

-- 

I guess we can start the introductions first! You both have a vast experience in the DevOps and as-a-service sector. Could you tell us more about your professional journey and how you started and joined Purestake?

Derek: 

I've been working on building as-a-service applications and infrastructure for my whole career.  With a particular focus on devops. I started going down the crypto rabbit hole last year and knew I had to get into the space in a more serious way.  That is what led to starting PureStake earlier this year.

For context, PureStake is an infrastructure as a service provider, focused on Algorand.  We provide relay nodes, participation nodes and Algorand APIs as a service. We aim to provide secure and reliable services for our customers.  Hiding the operational complexity that goes along with running nodes and other infrastructure.


Daniel:

You do have an extensive background in as-a-service applications particularly Fuze! 


Tim:

My whole career, starting right in the middle of the first dot-com bubble, has been in the software space. I have had the good fortune to be able to work in a wide range of industries and in different roles across the spectrum, from extremely hands-on to senior leadership in a  public company. When Derek and I started discussing the opportunity present in the blockchain space and the chance we had to build something in this new space I knew I had to be involved.


Daniel: 


Does it make the process of developer onboarding easier using your API? What benefits does it provide in terms of costs, operational complexity, storage for aspiring devs?

When did you guys learn about Algorand and why choose it as a starting point for your business? Clearly there are many other permissionless & permissioned blockchains in space 


Derek:

The API definitely makes it easier to start developing quickly on Algorand.  Even though the mainnet only launched in June, it takes maybe 8 hours to sync a node at this point, not to mention the storage required and keeping the node running well 24x7.  By providing the API as a service, you can shortcut that time and leave the ongoing maintenance to us.


Daniel:

Great to hear! What about the onboarding process, do you have any documentation available at hand for developers?


Derek:

We actually learned about Algorand last year while it was still under development.  We are based in Boston and know folks on the Algorand team well. That being said, we are excited about the next gen proof of stake networks, and think the Algorand tech is super performant and secure relative to other options that we have looked at.


Tim: 

On our developer site, we do provide numerous code samples to supplement the docs provided by Algorand, we also provide a repository of code samples on GitHub for new users to grab a hold of. Primarily, our service works with all of the materials and guides provided by the Algorand team.  

PureStake Developer site : https://developer.purestake.io

PureStake API Samples on GitHub : https://github.com/PureStake/api-examples



Daniel:

Are there any plans to provide API services for Blockchains beyond Algorand? Or do you plan to remain solely dedicated and working for Algorand majorly?


Derek:

Algorand is our primary network and we have additional algorand based services in our roadmap.  That being said we are looking at other networks to see if there are opportunities to leverage our infrastructure in a way that makes sense.  In general though, we believe in focussing on a small set of networks in going deep on them vs trying to provide a service across many networks.  Each of these networks is unique and requires a lot of knowledge to really understand how they work. You have to really understand these networks well if you want to provide good quality services for them.


Daniel:

My next question would be on the limitations! Is PureStake scalable as it stands currently? How many API calls are you able to process simultaneously?


Tim: 

Good question, as in all things, software - it depends! We have a pool of high performing archival/indexed servers backing each of the TestNet and MainNet ledgers - in front of that we have a caching layer for common items like blocks/transactions - meaning, for some queries we have near infinite capacity, but for others, notably the ones related to the searching functions of the indexer, the capacity is much lower and we are looking at projects to provide the same capacity there. 


Daniel: 

Does that make you remain Decentralized however? Since that is a major point of contention for Ethereum and other permissionless blockchains. 


Derek:

Yeah - this question of decentralization is a good one.  I have seen some of the critical commentary relative to infura and the role it plays for Ethereum.  A few points on this. First, we have gone to great lengths to make sure our API service is compatible with the direct node api and the existing algorand SDKs.  What that means is that you can get started on using our service, but migrate to your own nodes at any time without any need to change anything in your application.  Second, we tend towards pragmatism here at PureStake. It just isn't practical for everyone to run their own highly available node farm even if that might be the best thing from a network decentralization point of view.  The conclusion we reached is that providing this service to help developers start developing applications on Algorand is highly valuable to Algorand as a network at this point. As the network continues to get traction, we expect there will be other API options in the market as well.


Daniel:

I would like to know if Algorand lets you do some kind of scripting. Specifically I would like to know if it would be theoretically possible to implement hash time locks of simple puzzle challenges (like the simple RSA based in Tumblebit).


Tim: 

Today, the API we provide is backed directly by the functions of the Algorand software - although as mentioned in a few cases we are looking to supplement those functions to provide faster access or additional information - from the standpoint of scripted functionality in the Algorand software, today there is not, but I know there are some exciting things coming down the pipeline, but perhaps @Daniel would do a better job discussing


Daniel:

My last question before we switch to community round would be on the security of your API service. Doesn't using PureStake create a single point of failure for the apps?


Tim:

For the API, since it fairly new service and the load to date hasn’t stressed the deployed infra at all, we are in a single region, spread out over multiple AZ (zones) - with an emergency DR failover site in another region - we do have a great deal of experience running in multiple regions and cloud providers and it is on our roadmap to provide a second API site in another region (preferably on another continent) to split the traffic when the demand is there


Derek: 

For our infrastructure in general we take a multi AZ, multicloud approach across AWS, Azure, and Google.  The devops tooling has come such a long way from where it was even a few years ago. We have a Terraform / Ansible automation stack that can be used to drive infrastructure into all three environments.  For our dedicated node as a service offerings we are in all three. For our API service we are currently multi-AZ but only in AWS. We plan to expand the API service to other clouds, but will do that as we see increased utilization / load on the API.


Mikka Jokkinnen:

Apart from Algorand, do you consider working with other public chains, e.g. Cosmos, Polkadot?


Derek:
Other than our primary focus on Algorand we are looking at Polkadot and other Substrate based chains to offer infrastructure services.


James:

As a follow up to this, it seems like your network has a presence everywhere apart from Africa. Any plans to expand there?


Tim: 

We are always evaluating our network and cloud providers - if it makes sense to do so we’ll stand up infrastructure there when the demand is there and it justifies the cost


Karma:

Do you collaborate with biggest players in Cloud data/CDN/ddos protection?


Derek:

For ddos we have multiple solutions in place including capabilities from the native cloud providers as well as cloudflare protecting parts of our infrastructure.


Merson:

Interesting I am planning to develop Dapp on Algorand and might need Purestake, any thoughts on its performance/ uptime/ chat support?


Derek: 

We stand behind the availability of our services and have telegram based chat support.  we offer paid plans with contractual support and uptime SLAs.


Lenny:

What are some current uses of the APIs?


Tim: 

There are a few projects using the APIs services either in production now or soon to be in production. We’ve been an early partner of AssetBlock and support a wallet provider - we’ve also provided the backend for the Algorand team for a variety of Hackathons


Sergio Caserta:
Hello. 2 questions: 1) pricing of services is on the site; 2) if someone had already created his own nodes, he would have particular advantages to use pure stake api to test a new application?


Derek:

The node api and our api service are the same, so even if you have your own nodes, you might get benefit and convenience from using our service for dev, test, etc.  You can of course connect to both the testnet and mainnet with our API. Advantage is really one less thing to deal with in your infrastructure so you can focus on building your app.  If you prod deployment uses your own nodes, it should not require rework.


Kong:

API service is convenient for developers but also can be used by hackers to implement attacks. EOS super-nodes API was been attack a lot of times in 2018. I hope you have a better way to block or avoid those kind of attacks.


Tim:
Security of infrastructure is always a concern and a priority for us. The API servers are not directly exposed to the internet and possess no wallets or keys that can be compromised. the servers are isolated from each other and are closely monitored by a 24-7 team.


Daniel:

Considering your previous experience, do you think permissionless blockchains would gain traction over permissioned & private solutions? I am talking about permissioned blockchains like HLF, Corda that are also dedicated towards enterprises.


Derek:
We strongly believe in permissionless networks and that they are an interesting way forward for the crypto space.  Pure consortium / private chains are much less interesting to us. That being said, enterprises can be reluctant to adopt public ledgers.  They will get there, but may need a path to get there. We believe that private / side / co / parachains that can be made private and controlled by an enterprise but connect back to a parent public chain for shared security, etc, will be a good to get public chain adoption in the enterprise.


Haardik:

Would you suggest using PureStake for prod applications or is it more of a get-going-quick dev tool?


Tim: 

We see ourselves as providing professional enterprise grade API backends for production services, although we are happy to contribute to the community by supporting devs in getting started quickly.


Evan:
What’s a feature or use case for devs you want to highlight or that might be lesser-known?


Derek:

For Algorand my belief is that not enough people understand how good the tech is.  They will over time. The use cases we are most interested in involve providing the backend for financial services firms.  The upcoming named assets will open a lot of possibilities here. There are a lot of people with an e.g. ERC-20 backend right now that are paying a lot of fees with poor performance.  Algorand is way more performant, less expensive, more secure, etc, and is already getting traction on this use case (e.g. tether on algorand).