Resume

Sign in

Senior Full stack .NET

Location:
Suwanee, Georgia, 30024, United States
Posted:
March 02, 2018

Contact this candidate

JOYJIT MUKHERJEE

E-mail: ac4oec@r.postjobfree.com

Cell Phone: 770-***-****

**** ******* ***., *******, ** 30024

Work Authorization: Citizen

OBJECTIVE

Seeking a challenging position with an innovative company that utilizes and enhances my extensive skills on Design, Development, Integration, Testing, and Debugging application using Microsoft Technologies. Have an overall experience of 16+ years in software development.

EXPERIENCE

Dycom – Roswell, GA

September 2017 to February 2018

Consultant

Operations Portal (Accounts Receivable Project)

This portal is used by a host of users to add order details and maintain the order details. Used for scheduling an inventory order with a designated supplier and to maintain the details of inventory in the 6 warehouses. It also allows for cross-shipping of parts from one warehouse to another. Apart from this the portal has an Accounts Payable Module that is used to pay the vendors their dues on a timely basis. I was part of a team that added the Accounts receivable module. This process was manual earlier. The Pay Orders are loaded into the portal on a weekly basis. Information from 2 other sources are also used to create an invoice for each job that can have multiple line items. There are two types of invoices: partial payment or final payment(CL100). Taxes and other fees are calculated wherever applicable. The front end is primarily Angular.js (1.6). Calls from the front-end use $http Angular Service to interact with the middle tier. The Middle tier exposes the business logic layer implemented using the Command Pattern (A gang of 4 Behavior Pattern). Dapper ORM is used to interact with the data stored in MySql Databases. Used Cron(Quartz.NET) trigger to execute weekly job of downloading a flat file attachment from an enterprise Gmail account and saved in a secured folder. Created a separated Scheduled task to process this flat file by bringing in the data (insert for new POs, update existing rows and delete those that have a status of “FINALLY_CLOSED”. All this processing is implemented using “Commands” that are queued up. Developed another Cron task that runs on a daily basis to bring in “PO-Related” data (updated Order quantity from a third-party application) and publish them on a RabbitMQ queue. The Commands subscribed to the designated queue consumes the message and updates the data layer. Uploaded Report PDFs to AWS(Amazon Web Services) S3 also modified pre-uploaded documents. Implemented Dependency Injection(DI) using Ninject for the scheduled task module for processing the data from the flat file.

Added the tables and the required indexes to the data layer and updated the repositories accordingly

Created the Commands and exposed them in the Web API Controller using HTTP Get & HTTP Post

Developed the Angular Directives and Controllers that uses $http Angular Service to call the WebAPIs.

Developed the views using HTML & CSS as per the Mockups in User Stories.

Developed a Cron trigger to implement a weekly email attachment scraping job.

Developed data extraction from a third-party source(Exposed as API) and publish them on a RabbitMQ queue.

Developed Commands that subscribe to designated queue to dequeue the message and process them.

Developed code to Upload and modify report PDFs to AWS (Amazon Web Service) S3 (Storage Service of AWS)

Implemented Dependency Injection(DI) using Ninject

Participated in meetings (Excluding standups) with the Project sponsors to get a deeper understanding of the existing manual functionality.

Participated in sprints for development, testing, code-reviews.

Technical Environment: C#, ASP.NET MVC, MySql, Angular.js, RabbitMQ, AWS, MS Visual Studio.NET 2015, MS Visual Studio.NET 2017, GIT, DI, Unit Testing.

Georgia Power (A Southern Company) – Atlanta, GA

July 2016 to July 2017

Consultant

OCC EVO (Online Customer Care – Evolution Project)

About 30 million customers use (for some modules in the future) this website to manage their services. The services include creating their profile, start, stop, and transfer service. It is also used to set up alerts that they can receive via text-messages, email or voice. I was in-charge in setting up the alerts module. This involved billing alerts, power usage alerts, outage alerts, and seasonal change alerts. The various types of alert-sections are selectively visible. The selection criteria involved operating company(4-types), type of account (Residential or commercial), payment type (pre-paid, credit, subsidized monthly equal billing) along with a host of other clauses. Not all types of alerts can be configured for email, voice, and text-message. System also allows the customer to enable/disable text based phones. The site interacts with DB2 and Oracle databases for data retrieval (and update). The “Logic-layer” is implemented by various classes that interacts with the repository (Data-layer). The WebApi layer exposes the “Logic-layer” to the front end(Web-layer). The Web-Layer comprises of HTML with Angular.js (1.5). The data is transacted between the WebApi layer and the Angular controllers in JSON format. Custom-directives were used to create common functionality like Adding a new email or a new phone. Custom validation happens with third party utilities from controller functions and directives. The WebApi, Repository and Logic layer uses .NET Core.

Added the Repository Layer, Logic layer and the WebApi layer for the entire alerts module after understanding the requirements

Recommended changes to some of the Oracle tables/views to suit requirements.

Developed the DML statements for the repository layer.

Developed some classes for the repository layer on which LINQ queries can be done.

Participated in meetings (Excluding standups) with the Business-leads to implement their requirements.

Re-developed deployment scripts for UAT

Participate in sprints for development, testing, code-reviews.

Technical Environment: C#, ASP.NET MVC, Oracle, Angular.js, MS Visual Studio.NET 2017, TFS, DI, Unit Testing, Web API

Rainmaker – Alpharetta, GA

June 2015 to July 2016

Sr. Developer

LRO (Lease Rental Optimization)

Various clients use our LRO software platform to advertise lease prices for their rental property (rental apartments). These prices are calculated based on a huge number of parameters like seasonality, competitors, unit types, lease terms, lease types just to name a few. A dedicated science team is responsible for updating, creating various mathematical formulas to come up with pricing. Iam part of a development team that implement these formulas. The data is managed using SQL Server 2014 & SQL Server 2008. The Web component implements MVC. The middle tier comprises of managed .NET DLLs that are written in C# using Entity Framework and C++. Some of the business layer is exposed to the Web Application by RESTful Web API. Data is transacted between them in JSON format.

Implemented Lease forecasting using Poisson distribution in the business layer.

Implemented MDM (Master Data Management) using OKTA Security API

Introduced Unit Tests in newer modules.

Added Dependency Injection to older managed modules so that Unit Tests can be written

Conducted sessions for other members (developers and testers) introducing them to TDD (Test Driven Development) [Used MS Fakes]

Participate in 2-week sprints for development, testing, code-reviews.

Suggested, designed and implemented technical changes like using SQL for Bulk Insert instead of using managed code from Legacy

Used Angular.js framework (1.6) to create a new form for scheduling reports.

Have made a presentation on how we can use MongoDB for logging.

iDisciple – Atlanta, GA

June 2014 to June 2015

Sr. Developer

iDisciple App. – MVC + WCF[With RESTful calls from iOS & Android Apps]

This is primarily a platform to provide posts (Articles, Audio & video) to both subscribers and free users. We are the largest providers of Christian content on the web. The application also has an Admin part that is used by users to upload content such as article, music & videos. And these content are then provided on the Web by the MVC Web Application and for other device apps by RESTful Service calls.

Designed and Refactored Controller.Action methods to intercept the Ajax calls(Routing table entries had to be added)

Designed a FullTextSearch to return searches with relevance(rank) sorting.

Refactored/recreated LINQ queries to enhance performance of various queries in the Business Layer.

Designed and Refactored Operation Contracts to the existing service calls.

Implemented TDD creating/designing Unit tests utilizing Rhino Mocks & Stubs.

Was part of a team to implement the changeover from AuthorizePayment API to Chase’s Orbital Payment Portal. Leading with Orbital Certification to Design Document creation and code reviews.

Facebook Integration : Login and authentication and association of legacy users with their facebook credentials using facebook’s graphAPI. Implementing the full stack for the Web and implementing the backend and the service-layer for the Android and the iOS environments.

Used StyleCop to implement better coding standards and practices

Provided support and guidance to other developers : employees and outsourced as a team lead.

Healthport – Atlanta, GA

November 2013 to June 2014

Senior Programmer

Workflow Manager Web application [MVC]

This Web based application allows various stake holders/account managers/ROI[Release of Information] Agents to approve(with or without changes)/disallow medical record requests. Patient records are imported using various techniques such as reading data(Patient records) from flat files or importing from staging tables updated by other systems, just to name a few. Sometimes patient records are manually entered by a view provided by this application. Scanned records(pdfs) are associated with a patient record using an Edit view provided by the application.

Used jQuery UI Widget such as Autocomplete

Used Data- attributes in my views

Bundled the javascript libraries & stylesheets for increasing view responsiveness

Used WebMatrix.WebSecurity class to implement security

Used Data Annotations (StringLength, Required) to implement simple validations implementing IValidatableObject.

Used EntityFramework in the Business Logic layer.

Used ViewModels in some cases for displaying calculated fields not stored in the database.

Used Areas to group the various business entities like Patient & Requestor

Used SQL Server for data storage, designed the data structure(tables and views), planned and created indexes after spotting heavy traffic areas.

Used JIRA for creating tasks against stories and updated statuses of the tasks and stories

Used TFS to checkin code, used shelve-sets for review

We have 3-week sprint, participated in categorizing the stories in 1, 3, & 5(levels of complexity)

Created design-documents & Process-documents for offshore teams to work with.

Reviewed off-shore teams code, provided them feedback, suggested ways to fix bugs.

Co-ordinated with Account Managers/ROI Specialists[stake holders] to understand and come up with design docs.

Coordinated successful delivery of enhancements within sprints.

Coordinated with the QA team to plan the scope for regression testing.

Corporate Executive Board (CEB) [Formerly SHL] – Atlanta, GA

May 2013 to October 2013

Senior Programmer

SHL Online[MVC]

The SHL Online website allows users/administrators to manage other applications at various enterprises. Provisioning new enterprises, changing the organization types and associating exiting and new users with an enterprise are just a few of the functionality provided by the site. The website implements MVC4 (Model-View-Controller) pattern.

Added Views and Models

Used Action Filters to define custom Error messages and used Log4Net to log them

Defined porting business logic existing in Stored procedures to the Business Layer

Used Web APIs to serialize data to the views.

Designed and implemented Custom Routing for handling the HTTP requests

HistoricalReport Service[WCF]

This Service Contract comprises of mainly 4 Operation Contracts, namely: POST, GET, DELETE, and IsAvailable. The POST is implemented using MSMQ protocol and is designed to be queued on a private queue. This is because serializing big files to the database will take longer time to finish. The service implements Fault Contract to notify the client incase of exceptions.

Turner Broadcasting System (TBS) – Atlanta, GA

December, 2010 to May 2013 (2Year 5Month+)

Advanced Programmer

Tax-Entity Project [MVC]

The Tax-Entity portal lets the Turner Tax group manage the various Tax-related entities and their data. The various entities varies from the different divisions and partner companies to the Tax-related consultants that are associated with some these entities. The application implements MVC (Model-View-Controller), Repository pattern. The site allows CRUD operations, reporting and push/pull notifications with other applications like Peoplesoft. Some of the tasks that was implemented in the project:

Implemented role-based security using the MembershipProvider class, also implemented LDAP Security

Created the Bootstrapper to register the various types

Developed the views with Telerik controls and jQuery

Defined and developed the various Actions in the various Controllers along with error handlers.

Defined and developed the various ViewModels with appropriate attributes

Used UnitOfWork Pattern to implement Data-integrity.

Designed and implemented the Service Layer for implementing the Business Logic

Implemented the Repository Pattern(Data Access Logic) to designed and developed the Data-Layer

Implemented Repository encapsulated DataContext for the various entities.

Created and modified the .edmx file as and when required.(Database-First approach)

Used the Unity Application Block to develop and test dependencies

Passed JSON objects from the controller(s) to the view(s)

Agile-Sprint-User-stories-Tasks-Defect thru TFS, also merged code with other developers using TFS

Designed the E-R Diagram and created the tables and relationships

.NET language used: C# 4.0

CRD(Copy Records Database), e-Approval System[ASP.NET Application] NET4.0

The CRD Website allows Copy-records clerks & their managers to provision and modify the relationships with different entities such as an Advertiser, Copy Editor, Quality Specialist, Division and the Network. The Application checks authenticity of some of these entities against other systems and also pushes entity definition to other systems. Some of the tasks that was implemented in the project:

Designed and created the ASP.NET Pages and the Master Pages in the Presentation Layer

Interfacing with a Oracle IP/M, a document management tool (called exposed Web Methods)

Used Ajax to call the Page Methods

Stored and retrieved XML data

Designed and created Tables(Normalized and de-normalized), views, and stored procedures in SQL Server 2008

Optimized query design by analyzing SQL Server query plans and redesigning indexes

Generate and maintain the .edmx file(s)

Used the Entity Framework(EF), to develop this Web Application

Creating and maintaining POCO

Setup/modify relationship between the various entities(Implemented Entity-Framework)

Implemented Model binding to form controls

Created Test Project using available Visual Studio Template to implement Test Driven Development(TDD)

Participate in implementing Agile methodology for software development.

Agile-Sprint-User-stories-Tasks-Defect thru TFS & Taskboard

Participating in user-story to task transition discussions

Used Javascript for client-side coding/validation

.NET Language used: C# 4.0

Interfacing Projects from DMS [Creating WCF Web Services to expose Imaging data]

Enterprise Applications department develops and maintains custom applications and third-party tools used by the various departments of Turner Broadcasting Systems (TBS). Various DMS Applications store information ranging employee contracts, advertisement invoices, accounts just to name a few. This information is required by other systems like PeopleSoft applications. We expose the data using WCF Services.

Platform: WCF, Visual Studio 2010(.NET Framework 4.0), Oracle11g, SQL Server 2008, C#.

Responsibilities:

Defining WCF Services: Defining service contracts, data contracts thus the interface.

Defining multiple endpoints using BasicHttpBinding and WSHttpBinding

Consumed WCF WebService, by generating the Proxy and implementing the service interfaces

Defined RESTful service for internal clients to consume

Understanding the Requirements/User-stories with the Analyst/PM/Client

Created Stored Procedures with appropriate permissions in Oracle11g

Defined and implemented Message-level security

Defined Role-based security on specific operation contracts

Created Design Document for defining the Service and the Data Contracts

Creating the test-client for testing some of the test-cases

Deploying to QA for testers to test. Fixing the bugs.

Defining the migration document for UAT. Fixing the reported bugs/changes.

Deploying to Production and updating downstream environments.

Used TFS to store/manage the solution, projects, & code.

Mohawk Industries - Atlanta, GA

May, 2008 to December, 2010

System Specialist - Permanent

Responsible for the design and implementation of a highly-scalable n-Tier enterprise application, running on the .NET stack with SQL Server, and Oracle as back end. Was also responsible for creating Web & WinForm client program for provisioning various entities on the system. Consumed and exposed WebServices from external clients. Developed WebService wrappers to consume external WebServices. The middle tier is designed to be integrated into a heterogeneous Service Oriented Architecture (SOA) system. The middle tier also uses BizTalk orchestrations. Day-to-day responsibilities include design and implementation of new functionality or a changed functionality, writing test code to ensure smooth flow of data from client to data access, and acknowledgement or response going back to the requester. document and the technical-spec document. Implemented the complete SDLC on 2 projects during my entire tenure.

Created WinForms & WebApplication for provisioning Masterdata in lookup databases and routing data in routing databases.

Implemented Transactions in the middle-tier to ensure atomicity of master-data.

Created WCF Service for communication between the Winforms with the middle-tier and data-tier.

Created XSD Schemas for validating inputs.

Used Stored Procedures and Datagrams to update data in SQL Server, Oracle, DB2 tables.

Designed and created Stored Procedures and Functions in SQL Server 2005.

Designed and created StoredProcedures in Oracle10 and DB2 systems.

Created BizTalk Server Orchestrations.

Used XSL Transformation (XSLT) for implementing Mapping in BizTalk Server flows.

Participates in meetings with the clients(business unit heads) to gather requirements.

Participates in Sprint-planning meeting, part of the SCRUM development environment.

Used Team Foundation Server(TFS) for version control.

Technical Environment: C#, ASP.NET, SOAP Web Services, WCF, WinForms, WebForms, ADO.NET, MS Visual Studio.NET 2005, MS Visual Studio.NET 2008, BizTalk Server 2006, T-SQL, MS SQL Server 2005, Stored Procedures, Triggers, views, DTS, JavaScript, XML, XSLT, MS Visual SourceSafe, Team Foundation Server(TFS), and Visio.

Dealer Benchmarking application

Client: American Express(Amex) - Phoenix, AZ

Employer: NIIT

March’08-May’08

Senior.NET Consultant

Was responsible for developing the Dealer Benchmarking application used by the corporate travel business to estimate and compare savings between peer organizations with their travel costs. The application has a thin client(WinForm app.) that runs on the laptops of the various stake holders and these clients interact with the middle-tier hosted on an appserver using WebService. The application has been created using Framework 3.5. The database is MS SQL Server 2005. All Front-end and middle-tier code is written in C#.

Technical Environment: ADO.NET3.5, WCF, ASP.NET 3.5, Visual Studio 2008(.NET Framework 3.5), SQL Server 2005, C#.NET.

Driver Risk Intelligence System (DRIS)

iVox – Atlanta, GA

Employer: NIIT

Aug’07-Feb’08

Senior .NET Developer

Responsible for designing and creating a 3-tier application that reports truck-driver performance. Implemented reports using MS SQL Server 2005 Reporting Services. Was responsible for creating the middle-tier and the data layer(Creation of SQL Server Tables, triggers, Stored Procedures etc.) Used SQL Server 2005 Integration Services (SSIS) to import data from .csv files to database tables. Created stored procedures in SQL Server 2005 to Inserting/Update data. Created classes to implement Business Layer logic (BL) and Data Access Layer (DAL). Additional responsibilities included interacting with experts to come up with the logic to calculate driver scores. Interpret the logic in flow-charts.

Technical Environment: ADO.NET, ASP.NET 2.0, Visual Studio 2005(.NET Framework 2.0), SQL Server 2005, SSIS, C#.

Payment Solutions

Audatex – San Diego, CA, Atlanta, GA

Employer: NIIT

February ‘05 to July ‘07

Senior .NET Developer

Responsible for the design and implementation of a highly-scalable n-Tier enterprise application, running on the .NET stack with Oracle as back end. The Web-layer communicates to the middle tier via web service and broker ASP. The middle tier is designed to be integrated into a heterogeneous Service Oriented Architecture (SOA) system. The back end implemented by Oracle ADO.NET(ODP.NET), using stored procedures..

Technical Environment: ASP.NET, ADO.NET, C#, Visual Studio 2003(.NET Framework 1.1), Oracle 8.x, VSS6.0, Page Controller, SOA, WebService, SSL, ISAPI, XSD, SOAP,C#

Intel – San Jose, CA & Redmond, WA (July, 2002 to January, 2005)

Employer: NIIT

.NET Developer - Scheduling Website (ASP.NET, ADO.NET, C#, SQL Server 2000)

Microsoft – Redmond, WA (February, 2002 to June 2002)

Employer: NIIT

.NET Developer - .NET upgrade

NIIT – New Delhi, India (January 2000 to January 2002)

Microsoft Developer (ASP, SQL Server 7.0)

NIIT – New Delhi, India (May 1999 to December 1999)

Microsoft Developer (COM, ASP, JavaScript, SQL Server 6.5)

NIIT - Kolkata, India (December 1998 to April 1999)

Microsoft Developer (SQL Server 6.0)

NIIT - Kolkata, India (March 1998 to December 1998)

Microsoft Developer (MFC, SQL Server 6.0)

NIIT - Kolkata, India (February, 1996 to March 1998)

C/C++ Developer

EDUCATION

Bachelor in Science, India (1991)

MBA from Lalit Narayan Mishra College of Business Management, India (1993)

GNIIT, India* (1996)

Microsoft Certifications: MCSD(.NET), MCAD(.NET), MCTS(Web App. Framework 4.0)

*GNIIT is a 3 year certificate program comprising of software, SDLC, QA, and best practice techniques.

The following software were covered:

Languages: C,C++(GNU compiler)

RDBMS: Sybase

Development products: FoxBase, FoxPro

OS: Unix(SVR4),MS Dos

GUI Platform: Windows 3.11, Windows for Wrorkgroup

Designing techniques: ER-Diagrams

Software Quality Assurance



Contact this candidate