About

Learn more about me

Software Engineer

  • College: VJTI
  • Achievement: Verified author on Medium
  • Nomination: Linkedin Creator's program
  • City: Mumbai, India

Skills

.Net 90%
WPF 70%
HTML 50%
WebAPI 60%
C# 80%
Blazor 70%
CSS 50%
Data structure & algorithms 80%

Project Management

Jira

Agile

Teamcity

Visual Studio

Version Control

TFS

Perforce

Git

SVN

Design Principles

MVVM

Design Patterns

Total Articles

Number of Interviews taken

Projects

Awards

Leetcode problems solved

Algoexpert problems solved

Testimonials

I have worked with Rikam and I can confirm he is fun to work with. I started Weatherford's journey with him, and he helped me understand the company's internal process. His work ethics are good as gold , and he is easily adjustable to a given situation. I appreciate his attitude of going out of his way to help others. Thanks a lot, man for all the fun code-debug sessions we had!

Namrata Tiwari

Sr. Software Engineer, Weatherford

I met Rikam in Weatherford. He is master in C#, WPF and has great problem-solving skills. Personally, even though I am a senior to him, I have learned many technical things from him. The Client is very impressed with his working style and how he adjusts his time so that he could collaborate with everyone. His ability and willingness to put extra efforts whenever required is considerable. I highly recommend his expertise to anyone who is looking for a Software developer. Rikam would become an appreciated member in any Team.

Mayank Nisar

Tech Lead, Weatherford

There is no better colleague than Rikam. He is one of the most dedicated professionals I've worked with and is willing to put that extra help whenever you need it. His expertise as a developer is considerable, and it helped our team come up with more efficient solutions in our projects and I highly recommend Rikam and would love to work with him again.

Sajjadhusien Painter

Software Engineer II, Saviant Consulting

Resume

My journey

Sumary

Rikam Palkar

Innovative and deadline-driven Software Engineer with 5+ years of experience designing and developing appliations for desktop, web and mobile platforms.

  • Mumbai, India
  • rikampalkar@gmail.com

Education

Master of Computer Application

2015 - 2018

VJTI, Mumbai

Java, Python, Data structures & algorithms, Data science, Computer architecture.

Bachelor of Science in Information Technology

2010 - 2013

Mumbai University

.NET, IOT, Computer graphics.

Publications & Certifications

Professional Experience

Software Developer II

April, 2021 - Present

Weatherford

  • Working with international team.
  • Lead in the design, development, and implementation of the WPF & Blazor applications.
  • Designing architecture for thin web client, & developing blazor components.
  • Delegate and supervise tasks of the 3 members of the development team and provide counsel on all aspects of the project.
  • Helped company to minimize project's budget cost by developing successful POCs and developing web app from the scratch.
  • Nominated for 2022's star performer award by CEO.

Software Developer

Oct, 2019 - Apr, 2021

Datamatics

  • Worked on Mumbai Metro and Lucknow Metro.
  • Designing user interface in WPF for Ticket Vending Machine & Ticket Office Machine.
  • Programming card readers, Token Dispensing Machine & Automatic Fare Collection gates.
  • Full-stack developer, developed & reviewed code for metro projects.
  • led Lucknow metro's project team.

Software Engineer

July, 2018 - Sept, 2019

Pi Techniques

  • Worked in WPF, WCF and C# to plan, to design & develop the full stack to manage crew activities.
  • Designed dashboards for seafarers.
  • Designed a framework, based on telerik controls for the project.

Intern

Jan, 2018 - Jun, 2018

Texas Instruments

  • Designed dashboards in Splunk to visualize vulnerabilities.
  • Developed a web portal to track new and updated vulnerabilities.

Projects

My Projects

Stock Marker Charts

A web based application allowing users to use Candlestick, OHLC (Open-High-Low-Close) charts on stocks from NASDAQ.

Covid 19 Tracker

Dashboard to show total number of confirmed cases, total number of patients recovered from covid and number of people who lost their lives to covid. This can be filtered by country and can also be filtered by data, It shows high level charts such as donut and line charts for better visualization of data.

Blazing Blazor

Blazor is a feature of ASP.NET, the popular web development framework that extends the .NET developer platform with tools and libraries for building web apps.

Mumbai\Lucknow Metro

The Mumbai Metro is a rapid transit system serving the city of Mumbai and the wider Mumbai Metropolitan Region in Maharashtra, India.

CygNet - Canvas

Canvas is HMI: Human-Machine Interface application, canvas provides high quality screen design functionality, utilizing in variety of specialized tools & controls that you can use to create user screens to interface CygNet software.

Thin Web Client

TWC is a web assembly allowing customers to view HMI-based screens and workflows in a web browser.

Portfolio

My Articles

  • All
  • Design Patterns
  • C#
  • WPF
  • Blazor
  • Java Script
  • Blockchain
  • Software Engineering
Adapter Design Pattern

The adapter also is known as a wrapper. cause it wraps objects that can be used by different objects.

Builder Design Pattern

Separate the construction of a complex object

Composite Design Pattern

The composite pattern provides a way to work with tree structures

Decorator Design Pattern

Decorator injects an interface which allows you to inject any behavior you're looking to add.

Facade Design Pattern

Hands-on implementation of the facade design pattern

Singleton Design Pattern

Consider a situation where you only want to create one instance of the class.

S.O.L.I.D Principles

Single Responsibility Principle, Open Closed Principle, Liskov's Substitution Principle, Interface Segregation Principle, Dependency Inversion Principle.

Null-Object Design Pattern

From object != null;to object ?? object.value; and now back at object != null;

Let's decode Blockchain

Blockchain is a highly secure peer-to-peer network architecture, and it has potential to replace the internet.

Cryptos and NFTs: FOMO and Hype

These markets forming a bubble and bubbles are often led by FOMO- Fear of Missing out

Abstract Class In Object Oriented Programming

Write extensible code in such a way that if requirements change in future then we can still make changes without touching existing logic

Abstract Class Needs A Constructor

How are we supposed to call a constructor when we can't even create an object of an abstract class?

Anonymous Method in C#

An anonymous method is nothing but an inline executable block encapsulated within {Curley braces}

Asynchronous Programming in C#

Await & Async was built on the Task Parallel Library (TPL) which was introduced to enable asynchronous programming

Delegates In C#

A delegate holds a reference to the methods, kind of a function pointer in C++.

Func, Action And Predicate Delegates

The Func delegate takes zero, one or more input parameters, and returns a value.

Jump Statements With Flow Chart

Jump statements are used to transfer the control of execution from one point to another point.

IComparable Vs IComparer Interface

IComparable has a method named as CompareTo & has only 1 parameter

IEnumerable And IEnumerator Interface

IEnumerable does not remember the current state it was processing. Thus it starts processing back from the 1st index

IQueryable vs IEnumerable Interface

Iqueryable is an interface used to iterate through collections.

Is And As Operator

The Is operator is used for checking whether the object is compatible or not.

Ref Vs. Out Parameter

Ref parameter is used when we want to modify the value of a parameter.

Var Vs Dynamic

Var is an implicitly typed variable because it is assigned at compile-time.

Extension Method

Extension methods enable you to "add" methods to existing types without creating a new derived type.

ObservableCollection Vs List

In nutshell both List and ObservableCollection inherits ICollection, IList interfaces.

Partial Class

One class can be presented at different locations, but still can be treated as one single class.

Partial Method

We can have one method in 2 different files. Such methods are called partial methods.

Roman To Numbers

Leetcode's problem number 13. Roman to Integer.

Numbers To Roman

Leetcode's problem number 12. Roman to Integer.

Boxing And Unboxing

For boxing, you will have to create a new object.

Implicit And Explicit Type Casting

In C# we have different kinds of data-types - (Containers), which have different sizes.

Valid Parentheses

Leetcode's problem number 20. Valid Parentheses.

2-D Graphics

WPF provides various shapes & drawings shapes such as Line, Ellipse, Rectangle, Path, Polyline & Polygon.

3-D Graphics

3D object in the world is represented by 3 points: X, Y & Z. X & Y are the axis coordinates specifying the height & width of an object, where Z represents the depth of an object.

Animations

Let's create a basic animation window on a data trigger.

Attached property

It's called an attached property cause they're attached with WPF elements and set by a DependencyObject.SetValue method.

Canvas Panel

Canvas allows child controls to be overlapped or to be placed in any direction as per the developer's wish.

Content Template And Data Template

Templates in WPF are used to customize the UI. We can manipulate both controls as well as data.

COVID 19 Tracker With WPF Part I

Let's create a WPF application with an attractive UI. This project is for education purposes only.

COVID 19 Tracker With WPF Part II

Reusing the same function to call 'n' number of API calls to update the UI.

Data Binding and it's Modes

One-Way Binding, Two-Way Binding, One-Way To Source, One_Time Binding, Default.

DataContext And Autowire

DataContext is the head of everything. It makes sure that your View is hooked up with ViewModel.

Bubbling Vs. Tunneling Routing Events

Bubbling is a Bottom-Up approach, Tunneling is a Top-Down approach.

Use Of Dispatcher In A Single Thread

WPF provides various shapes & drawings shapes such as Line, Ellipse, Rectangle, Path, Polyline & Polygon.

Dynamically Aligned Controls

IsSharedSizeScope is used to keep the control's alignment consistent between Panel's children.

Fallback And Target Null Values

We basically assign some default value to object type, so whenever a null value is expected we can simply replace it with the assigned default value.

Grid Panel

Grids are consist of Rows & Columns, which are defined inside a RowDefinations & ColumnDefinations.

ICommand Interface In MVVM

ICommand is an interface between the Presentation & the BusinessLogic layer.

INotifyPropertyChanged Interface In MVVM

We can bind properties of ViewModel with View, but is there any way to tell UI that bound properties have been modified so that the UI must update itself?

2-D Graphics

WPF provides various shapes & drawings shapes such as Line, Ellipse, Rectangle, Path, Polyline & Polygon.

Introduction To WPF

This chapter is a swift taste of WPF and its capabilities. In this chapter, you will gain an understanding of how to build your first WPF application.

StackPanel

Stack panel is one of the simplest panels to use. It stacks its child elements in a single line, either horizontally or vertically.

Multimedia In WPF

You can do a lot of cool stuff with MediaElement control.

MultiTriggers And MultiDataTriggers

Triggers only satisfies one if condition. But in a programming language, we could have multiple conditions.

REST API's Implementation In WPF

We need to have a class for 4 interfaces, Get, Post, Put & Delete.

Routed Events - Bubbling

Bubbling events travels up the visual tree to the topmost element of the visual tree. The topmost element either could be a window or a usercontrol.

Static And Dynamic Resources

How to utilize resources in an application or single-screen wide, and how to load multiple resource files together?

Styling In WPF

Let's be honest, the more attractive the UI, the more satisfactory the user experience will be.

Triggers Property: Data And Event Triggers

Property Trigger: Applied based on control's property, Data Trigger: Applied based on binded data. Event Trigger: Applied based on an event.

UserControl In WPF

The purpose of UserControls is reusability.

Dependency Property

Any property which is dependent on any external source to set their value is known as a dependency property.

Attribute Splatting

How to send multiple parameters from parent to child component.

Cascading Parameter

Cascade down data from parent to its grandchild.

Better way of Cascading Parameter

Use name as key to send multiple parameters .

Blazor Server vs. Blazor Web Assembly

Blazor you can design both your server and client application in C#.

Dynamic CSS Values

Create style as you normally would but this time with CSS variables.

Event Call-Backs

5 precise steps to send events from child to parent component.

Event CallBacks with Parameters

Understand the flow of control from source to destination.

Render Fragment

Blazor reads all the markup inside tag and binds it with only RenderFragment available.

LinkedList Implementation In Javascript

By definition, a linear data structure is the one that arranges its elements in a linear fashion.

Reverse A Linkedlist In Javascript

We will cover one of the favorite questions asked in interviews.

Stack's Implementation

We always start with a pringle on the top, and one by one we start consuming more till we reach the last one at the bottom of the box.

Contact

Contact Me

My Address

Mumbai, India

Connect with me

Email Me

rikampalkar@gmail.com

Let's code together

Loading
Your message has been sent. Thank you!
Designed & Licensed by Rikam Palkar