Speaker

Mayank Raj

Mayank Raj

Lead Engineer, Security @ Salesforce

Mumbai, India

Today I work on building the foundational security layer at Salesforce. I have with extensive experience in not only building high performant products powered by AI/ML, Big Data etc, but also designing resilient and fault tolerant cloud infrastructure around it. I have architected products that can scale to handle 100x load within minutes and yet remain cost effective. I have also worked with big data and built a graph database engine to work with more than a billions of nodes and edges. I'm also a open source enthusiast and have made contributions to various open source projects like Mozilla Firefox, RxJS etc.

Area of Expertise

  • Finance & Banking
  • Information & Communications Technology

Topics

  • Cloud strategy
  • Cloud & Infrastructure
  • Cloud Security
  • Cloud Automation
  • Amazon Web Services
  • Google Cloud
  • Azure
  • DevOps
  • Cryptography

Thinking Reactively with RxJS

Handling the flow of asynchronous data streams has always been a challenging task. Callbacks offer the quick solution. Then came promises which made it easier to write and maintain code around such data streams. Reactive programming is another take on the problem. With implementations in languages like .net, java, scala, JavaScript etc, with big names like Google, Microsoft, Netflix actively supporting and maintaining implementations of the idea in these languages, the style of programming is here to stay.
JS community has been appreciating the ease it brings in given the asynchronous nature of the language. Angular has adopted it as a core library, React-redux uses it. It’s safe to bet that the javascript implementation, RxJS if used in the right way can help in many ways.

Tearing down & exploring - RsJS

RxJS has grown into popularity in the recent years. There are a lot of resources to get started with RxJS. This coupled with the fact that the library exposes very clear set of API’s, its extremely easy to start writing with observables. This talk digs deep into the concepts of RxJS, by building it.

Just like JS itself, it’s extreemly easy to get started with RxJS. Having being included as a core library in Angular means that for some of us, it’s even necessary to get started with it. As the library exposes very clear-to-understand API, it’s eaven more easier to somehow just get things going and not bother about it. This has never been a good idea. This talk focuses on explaining the core building blocks by building it from scratch. This also helps in reinforcing why certain things happen the way they happen, like why observables are lazy in nature. It then goes in to explore concepts like how data flows along the chain of operators, Hot & Cold Observables, Higher Order Observables etc.

Sample Deck - https://goo.gl/JGstou

This talk starts off with going over some basic concepts of reactive style of programming and then quickly jumps into much more intermediate/advanced level topics. It talks about how observables, operators etc are just sets of functions and how we can build them from scratch easily. It helps enforce one of the core and central idea of observables that observables are lazy in nature, by explaining the architecture that supports it. We then move on to distinguishing design patterns and how the data should be handled. With supporting demo, we then explore the concept of Hot&Cold Observables and higher order observables.

Finally, to show all these concepts in action a multiplayer demo is shown with the code.

Serverless Cron with Second Level Schedule and Conditional flow

Slide decks : http://bit.ly/mayank-raj-serverless-cron
Talk Abstract
After a point every application relies on background process which is powered by cron. Instead of a having a cron server this talk shows how cron process can be designed as a micro-service with all the benefits that come with being serverless - scalable, manageable, maintainable and cost effective.

Talk Description
Instead of provisioning a dedicated server for cron jobs, we at the R&D team at Cactus Communications were looking for ways we can achieve higher time precision and get the job done at a fraction of cost. What we came up with was a way in which we use a few of the managed services provided by AWS (which have equivalents in all major cloud services) that gives us second level trigger ability, failure retries from the cron process and not the application, alerts, easy visual interface to see the current state and detailed logs right out of the box.

With this we did not introduce any new tool, technology or even package to pipeline. This meant there was no disruption to the workflow and developers did not have to look into a new tool or package. The switch was seamless. We are now alerted only when a predefined patterns are seen in the logs. As it uses managed service, we do not have to look into issues like scalability, availability and even disk usage, which have to be monitored in case of cron servers.

Mayank Raj

Lead Engineer, Security @ Salesforce

Mumbai, India

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top