Madhuri Ravindra Mohan, Developer in Toronto, ON, Canada
Madhuri is available for hire
Hire Madhuri

Madhuri Ravindra Mohan

Verified Expert  in Engineering

Software Developer

Location
Toronto, ON, Canada
Toptal Member Since
June 14, 2020

Madhuri is a software engineer with six years of experience as a team lead or individual contributor. Examples of her diverse projects include developing file readers for composite parts of an airplane wing and building an authentication microservice. Her love for algorithms and mathematics motivated her to pursue a master's degree in theoretical computer science and focus on graph problems and solutions for her thesis. Madhuri enjoys interacting and learning new things.

Portfolio

Amazon Web Services (AWS)
Agile Software Development, Amazon Web Services (AWS), AWS Cloud Development...
Fontana Engineering Group LLC (via Toptal)
Java Modularity, JUnit, X.509 Certificates, Swing, SSL Certificates, Smartcard...
VMware
Amazon Web Services (AWS), OAuth 2, Spring Data JPA, Java, TestNG, JUnit, Jira...

Experience

Availability

Part-time

Preferred Environment

IntelliJ IDEA, Git, Java

The most amazing...

...experience I've had was analyzing the load on a microservice, learning the basics of Scala, and developing its entire load testing framework in just two weeks.

Work Experience

Software Development Engineer II

2020 - PRESENT
Amazon Web Services (AWS)
  • Designed, built, and integrated services that protect AWS account Sign-Up, Sign-In, and Single Sign-On (SSO) from security threats.
  • Handled service integration with other internal intelligence services, driving cross-team collaboration and decisions.
  • Understood customer requirements and analyzed live traffic to identify solutions that can increase the security posture of AWS Identity.
  • Managed real-time security events as part of on-call support.
  • Defined AWS cloud infrastructure using CDK: Involved learning basics of TypeScript.
Technologies: Agile Software Development, Amazon Web Services (AWS), AWS Cloud Development, Java, TypeScript, Amazon CloudWatch, AWS CloudFormation, Java 8, Scrum

Java Developer

2020 - 2020
Fontana Engineering Group LLC (via Toptal)
  • Developed an API that will build a path from the trust anchor to the EE cert and determine whether the certificate is valid when the specified certificate policy is asserted. I studied the Java Crypto and Bouncy Castle libraries to achieve this task.
  • Upgraded the existing smart card validation software from Java 8 to Java 11, from JUnit 4 to JUnit 5, and from Gradle version 4.3 to 6.6. I learned and applied Java modules during this upgrade.
  • Fixed bugs and made enhancements to the GUI, applying the basics of Swing for this task.
  • Added and enhanced JUnit tests to ensure product stability and prevent regressions. Special behavior was required because the application also ran JUnit 5 to validate PIV cards.
Technologies: Java Modularity, JUnit, X.509 Certificates, Swing, SSL Certificates, Smartcard, Gradle, GitHub, Java, Java 8, Spring

Software Engineer

2017 - 2019
VMware
  • Developed REST APIs to access and store user entitlement details in a database, focusing on caching for performance, encryption for confidential data, hashing for passwords, and versioning for backward compatibility.
  • Served as the key developer for an Okta-VMware partnership project and developed endpoints to support launching the Okta apps through Workspace ONE.
  • Designed and developed a microservice that provides authentication/authorization features based on OAuth 2.0 and OIDC protocols. I built the infrastructure using AWS and the deployment pipeline using Jenkins.
  • Worked on several features and bugs related to reading/writing SAML requests and responses.
  • Organized bimonthly scrum meetings to divide projects into sprints and performed retrospectives on their execution at the end of each sprint.
  • Performed continuous monitoring with on-call duty. The product was a SaaS application with a high SLA. The tools used were AWS CloudWatch, AWS Management Console, PagerDuty, and Slack.
  • Understood the load on the service to perform horizontal and vertical scaling of EC2 servers as required.
Technologies: Amazon Web Services (AWS), OAuth 2, Spring Data JPA, Java, TestNG, JUnit, Jira, Jenkins, Liquibase, MySQL, PostgreSQL, Hibernate, IntelliJ IDEA, Git, OAuth, SQL, Java 8, Spring, REST APIs, Swagger, Scrum, SAML

Teaching Assistant

2015 - 2017
Indian Institute of Technology Madras
  • Served as a teaching assistant for key computer science courses such as Principles of Software Engineering, Discrete Mathematics, Automata Theory and Logic, and Combinatorics.
  • Guided and mentored students as they built their first software projects across a semester. I held weekly office hours to help students understand concepts and clarify their doubts.
  • Evaluated and graded the students through tests and examinations. I interacted with low-performing students to understand their issues and discussed the feedback with faculty.
Technologies: LaTeX

Team Lead

2014 - 2015
Altair India Engineering Private Limited
  • Developed features based on requirements from customers in the aerospace and shipping industry. These features required full-stack development.
  • Implemented the UI using Tcl/Tk, and the back-end API was in C++. An extensive set of automation tests were written for each new API.
  • Designed visualization tools to graphically display entities such as nodes, edges, loads, forces, directions, and connectors.
  • Trained new team members and interns on the product and supported them on their projects.
Technologies: Finite Element Method (FEM), Perforce, Tcl/Tk, C++, Visual Studio

Software Engineer

2011 - 2014
Altair India Engineering Private Limited
  • Supported FiberSim and HyperMesh interoperability using HDF5 files.
  • Built an Excel and CSV file reader and writer using C++ for data exchange between HyperMesh and CATIA.
  • Developed build verification tests using Tcl, an extensive test suite to catch regressions after a new feature is added to software.
  • Tracked and fixed numerous bugs in HyperMesh software.
Technologies: Finite Element Method (FEM), Perforce, Tcl/Tk, C++, Visual Studio

Step-up the Authentication Dynamically

I developed an enhancement feature during an internal hackathon challenge at VMware. The tool analyzes the risk of a login based on various factors such as location, device, and failed login attempts. For a given risk score, administrators can decide which authentication modes (i.e., password, PIN, security question, RSA, or fingerprint) the user must be challenged with. The main idea behind the tool is learning the user's behavior by capturing data during each login and using this historical data to analyze if the user's latest login is risky or not. The tool was built using Java with Spring and a PostgreSQL database.

Languages

Java, Java 8, C++, SAML, SQL, Tcl/Tk, Python, XML, HTML, Scala, TypeScript

Frameworks

OAuth 2, Spring Boot, Hibernate, JUnit, TestNG, Mockito, Spring, Swagger, Swing

Tools

Postman, Git, Visual Studio, Apache Maven, LaTeX, Confluence, Jira, Perforce, Jenkins, Gatling Load Testing, AWS CloudFormation, AWS IAM, Amazon CloudWatch, IntelliJ IDEA, GitHub, Gradle

Paradigms

Agile Software Development, REST, Test-driven Development (TDD), Microservices, Scrum, RESTful Development, Continuous Deployment, Continuous Integration (CI), Concurrent Programming

Storage

PostgreSQL, MySQL, Spring Data JPA, JSON, Memcached

Other

OpenID Connect (OIDC), Algorithms, OAuth, Complexity Theory, Discrete Mathematics, Continuous Monitoring, Ehcache, Finite Element Method (FEM), Smartcard, SSL Certificates, X.509 Certificates, Java Modularity, AWS Cloud Development

Libraries/APIs

Liquibase, REST APIs

Platforms

Amazon EC2, Eclipse, PagerDuty, Docker, Amazon Web Services (AWS)

2015 - 2017

Master of Science Degree in Computer Science and Engineering

Indian Institute of Technology Madras - Chennai, India

2007 - 2011

Bachelor of Engineering Degree in Information Science and Engineering

Visvesvaraya Technological University - Belgaum, India

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring