Post Job Free
Sign in

Senior .Net Developer

Location:
San Francisco, CA
Posted:
February 27, 2015

Contact this candidate

Resume:

Objective To develop high-quality software in a growing company that

strives to deliver exceptional customer value.

Primary Skills

. Over 11 years of extensive experience in the IT industry, Involved in

all Phases of Project life Cycle (SDLC) -Analysis, Design,

Development, Unit Testing, Documentation and Maintenance of

Applications with the extensive knowledge of project life cycle and

related process.

. Dev Methodology: Agile development and Scrum (7 years).

. Good experience in developing Windows & Web based application using

Microsoft technologies including C#, VC++ (MFC), C++, MVVM (WPF), MVC,

Silverlight, XAML, XML, WCF (SOAP and REST) and Web Services.

. Have experience working in MVVM pattern with WPF and MVC pattern.

. Experience with working on applications using Multi-Tiered

Architecture, Service Oriented Architecture (SOA).

. Experienced in using Visual Studio 2013/2012/2010/2008/2005/2003/6.0

Technologies.

. Worked in Design pattern like Dependency Injection, Unity Framework,

Factory Pattern and Singleton

. Experience in BigData initiatives on Splunk and MongoDB

. Experience in Caching using MemoryCache, Redis and AppFabric

. Experience in working with dtSearch indexing and searching.

. Experience in performance Profiling using ANTS memory Profiler and

DynaTrace.

. Created unit test cases and functional tests using NUnit, MSTest and

MOQ framework, Rhino Mock. Used Productivity and code refactoring,

code coverage plug-ins like ReSharper, DotCover and PostSharp for

Visual Studio.

. Created Functional tests and Integration tests for the modules I have

worked with.

. Voluntaries to take up POC and proto-typing during project proposals.

. Configuring Team City to perform daily builds and Auto builds.

. Implemented Aspect Oriented Programming using PostSharp and Log4Net.

Refactored multiple business components, eliminating logging details

and debugging details in almost every method to a separate Aspect

class common for the project. Also created aspects to log the

performance of each code blocks.

. DevOps: TFS (6 years), Maven (3 years), SVN.

. Third party tools: dtSearch (3 years), Oracle-Outside-In (2 years),

Equivio (1 year), Lead Tools.

. Excellent verbal and written communication skills.

. Having experience in leading onsite/offshore teams of maximum 15

members.

Achievements

. Initiated and performed POC on deduplication during indexing/Search to

increase the performance during search/indexing.

. As part of performance tuning team, worked in improving performance

using Parallel task library, Caching and avoiding the needless hubs in

SOA.

. Part of refactoring team to refactor multiple services to share the

code between them instead of using the business logic in different

places. Added Unit testing and covered more than 90%

. Introduced Aspect Oriented Programming and eliminated 95% of redundant

codes in logging information, Debug information and creating

Performance metrics using PostSharp and Splunk.

. Presented two Papers in International Conference on Digital Image

processing while working in IIT-Bombay.

. Worked on account level project proposals by working on POC's and

following estimation Models.

. Worked on major Customer issues with minimal turnaround time during my

tenure with Summation.

. Got client appreciations for bringing down project state of various

release from critical state to a stable state. And resolving critical

issues during my tenure with Summation client.

. Developed "Snake" game using various features of "C" such as Graphics,

Interrupts.

Assignments

ART.COM, Emeryville, CA Dec 2014 - Till

Date

Project: Consolidation of API and Re-writing Legacy services (asmx) to WCF

services

This project is to consolidate and rewriting the legacy services (asmx)

into WCF services exposing different bindings. These services are consumed

using appropriate bindings according by the client.

Role: Senior Service Consultant

. Centralizing the business logic and exposing as Service.

. Performed POC on WebAPI.

. Adding more logging to identify the Errors in SPLUNK.

. Exposed as RESTful & SOAP services, so that the client can call the

service using appropriate bindings.

. Added unit tests to the service and extended to maximum code coverage.

. Creating and Monitoring Error/Performance metrics using SPLUNK

Responsibilities:

. Analyse the impact on all consumers and creating impact analysis.

. Modifying the configurations to accommodate the service changes.

. Added Unit testing using Nunit. Added Rhino Mocks to mock different

object to avoid DB calls.

. Adding SPLUNK logging to the component changes.

Environment: C#, .Net framework 4.5, WCF, Web-API, ASP.net, SQL Server

2012, SPLUNK

ART.COM, Emeryville, CA July 2014 - Nov

2014

Project: Modifying Session Service to change the GeoIP logic and Visit

Logging logic.

Rewriting the business logic to consume the Geo-IP rules from Session

Service. The Geo-IP rule was written in different locations locally prior

to this change. Consolidated the logic into single component and it's been

consume in other services to reuse the logic.

Logging visit information to Mongo DB, instead of existing flow to log in

SQL-Server. All the consumers which store the Visit information are

modified to use the new logic instead of storing in SQL Server.

Role: Senior Service Consultant

. Identifying the components using the GeoIP logic. Either locally or

referring to different component.

. Implemented the GeoIP Classes and rules.

. Modified other consumers to use this logic instead of stand-alone

logic in different classes

. Creating Mongo DB wrapper which interact with services to log the

visit info to Mongo DB.

. Added unit tests to the service and extended to maximum code coverage.

. Creating and Monitoring Error/Performance metrics using SPLUNK

Responsibilities:

. Creating the impact analysis for the GeoIP changes and Visit details.

. Creating Technical documents and Change of flow documents.

. Creating the separate component for GeoIP rules and consumed in

Session Services

. Added Unit testing using Nunit. Added Rhino Mocks to mock different

object to avoid DB calls.

. Adding Splunk logging to the component changes.

Environment: C#, .Net framework 4.5, WCF (REST), Asp.Net, SQL Server 2012,

Mongo DB, Splunk

Xerox Litigation Services, Albany NY Feb 2014 -

June 2014

Project: Re-Writing Omni-X indexing and search engine using DtSearch Engine

Re-writing indexing and search sub-systems using dtSearch Engine API. The

indexing and Search sub-Systems interacts with other sub-systems without

affecting the existing work flow

Role: Senior .Net Consultant

. Proto-typing with dtSearch to verify and validate the search results

and performance.

. Implementing core business logic to complete the indexing and search

component by using existing subsystems and implementing new models and

logic classes as necessary using dtSearch Engine API

. Generating performance matrix to compare the search results with old

search and new search Engine.

. Design and Develop WPF applications to verify the dtSearch indexes and

perform the available dtSearch functionality using MVVM.

Responsibilities:

. Understanding the existing search mechanism with OmniX and re-

implementing the search using dtSearch Engine API

. Writing WCF services both SOAP and RESTful to implement Indexing and

Search using MVC pattern.

. Writing Unit test and performing code reviews using VS2013.

. Responsible for branching and merging using TFS 2013

. Writing Functional tests and do code coverage more than 90%.

Environment: MVC, MVVM with WPF, C#, Visual Studio 2013, .Net Framework

4.5, WCF, SQL Server.

Xerox Litigation Services, Albany NY Dec 2013 -

Feb 2014

Project: De-duplication of Omin-X documents

This project is to DE-duplicate the documents during loading. This

system identifies the duplicate documents, and updates the database schema

with the information about the master document and the duplicate documents.

This information will be used for indexing/Searching module which will

avoid indexing these duplicate documents. This process will increase the

performance of search.

Role: Senior .Net Consultant

. Implementing DeDuplication to filter the duplicate documents during

document load into the OmniX system. The Deduplication process is a

Windows service build on WCF Services on .Net 4.5. During the load,

DPS provides the documents and the docId associated with it to the

Deduplication process. The deduplication process generates SHA1 for

the each document and stores the SHA1 and docId as key-value pair.

Each batch before loading, send list of documents to deduplication

service to check any duplicates exist. If duplicates exist, the

process updates the database with the information about the duplicates

and its master document.

. Performed POC (Proto-typing) on various caching mechanism to store and

retrieve deduplication data quickly to the user. The size is more than

100 Million records. So, did analysis on various data retrieval and

caching mechanisms to make it faster during deduplication retrieval

process. Implemented proto-type code using MemoryCache, Redis and

AppFabric to compare the performances.

Responsibilities:

. Understanding the existing Data load to introduce Deduplication during

the data load.

. Reconfigure existing Node to go thru deduplication process.

. Writing WCF services to expose both SOAP and RESTful API's to

implement Deduplication

. Writing Unit test and performing code reviews using VS2013.

. Responsible for branching and merging using TFS 2013

. Writing Functional tests and do code coverage more than 90%.

Environment : MVC, C#, Visual Studio 2013, .Net Framework 4.5, WCF, SQL

Server, Memory Cache, Redis and AppFabric for caching

CT Summation, California CA Jan 2012 - Oct

2013

Project: Summation 4.0 - Summation 5.1. New feature development,

Enhancements, performance tuning and maintenance in Summation products.

Role: .Net Developer

. Developed Bulk printing Utility to summation which can convert

millions of documents and stream it in batches to the local printer

using MVVM (WPF), XAML and WCF. Application uses WCF service calls to

Perform Document Conversion (if necessary) and fetches the stream back

from server. The streams are sent to printer available to the local

machine. The utility monitors the printer pool and sends job based on

printer load. The utility provides live updates about the number of

pages/Documents printed and the status of each page as summary.

Creation of Unit test cases using nUnit with code coverage of 90%.

. Performance Improvement in Importing DII data to Summation Application

using C# .Net 4.0, Silverlight and WCF. Introduced Aspect Oriented

Programming (AOP) and eliminated redundant codes, logging (log4Net)

information and creating Performance metrics using PostSharp Aspects.

. Developed Utility to Migrate iBlaze into Summation using MVVM (WPF)

and C# .Net 4.0. iBlaze is build on SaturnDB. The tables in SaturnDB

will be accessed using Wrapper class build on unmanaged dll's in C++.

Summation Database layer uses ADO.Net which exposes API to Business

Service layer in Summation.

Responsibilities:

. Interacting with the Business to gather requirements related to the

project.

UI development for major features in WPF, C# using MVVM.

. Developed API, data contracts, service contracts to expose it as WCF

services in C#

. Developed Business logics using Interface based derived classes,

Entity framework and Dependency Injection.

. Helped technical support with their questions on application

architecture, deployment procedures, SQL Tables and worked together to

resolve or provide workaround to environmental issues in customer site

. Performed code reviews for WPF application and WCF services.

. Executed numerous production deployments, troubleshoot and resolved

deployment and environmental issues.

. Created continuous integration tests and unit tests to identify and

resolve issues before check-ins.

Environment : MVVM (WPF), C#, Entity Framework, XML, Visual Studio 2012,

.Net Framework 4.0, WCF, SQL Server 2008

Target Development, Minneapolis, USA Feb 2011 - Dec

2011

Project: Rewriting and Enhancing of Information Retrieval process for

Target Corp.

Role: .Net Developer

. Rewriting the Information Retrieval Process using MVVM (WPF).

Extending COM component which will interact with Unix DB for

transaction (Tandem DB). Did POC on third party toolkit to support

with IR (Sheridian toolkit, Farpoint Spread)

. Creating Automated User Interactions for C#.Net Forms using JAWS

scripting language. JAWS scripting language communicates with the user

via voice recognition.

Responsibilities:

. Understanding the requirements from Business

. Developing UI using MVVM (WPF).

. Rewriting IRP code and did POC on the impacts on third party

components

. Creating JAWS scripts to make the User interactions for C#.Net forms.

. Feasibility study of third party tools with IR

. Design, code review and enhancements

Environment: MVVM (WPF), C#, Visual Studio 2010, Visual Studio 6.0 (for

MFC).

CT Summation, California, USA Dec 2009 -

November 2010

Project: Duplicate Analysis using Near Dupes

Role: C# .Net Developer, VC++ (MFC) developer

. Performed POC on the incorporating Document compare functionalities

into Enterprise code.

. Document compares using Equivio (a third party component) which will

provide the similarities between the processing documents. The similar

set of documents are analysed by Equivio Processing to calculate the

percent similarities and the relationship between the documents. The

data are imported back to summation using import workflow, so that the

user can perform Near-Duping. The imported data are viewable in

separate viewer which is developed using Telerik Win Grid controls.

From the UI, the documents can be compared which will invoke WinDiff

tool to see the difference in similar documents.

Responsibilities:

. Managing and co-ordinating the team Activities

. Performed POC on DeDuping and application compatibility with Equivio,

Teleriks Win Grid Controls.

. Creating .Net WPF which uses Telerik Grid Control to show the

properties of related documents. The user can perform document compare

from the UI to compare the similar documents.

. Involved in Code review activities

. Responsible for Estimation, Development and maintenance.

Environment: .Net Framework 3.5 & 4.0, MFC, WPF, Visual Studio 2005, C#,

Telerik Win Grid Controls and Equivio processing Tool.

CT Summation, California, USA Jan 2008 -

November 2009

Project: Redaction Enhancement for images

Role: C#, VC++ (MFC) developer

. Performed POC on the LeadTools compatibility with iBlaze where the

annotations can be semi transparent

. The Redaction can have Redaction Reasons, Options to choose colour and

burn-ins. The redaction needs to be converted to fit the Zoom-in and

Zoom-Out and with different resolutions.

Responsibilities:

. Managing and co-ordinating the team Activities

. Performed POC on LeadTools compatibility with iBlaze.

. Including the LeadTools components in build process and repository

. Involved in Code review activities

. Responsible for Estimation, Development and maintenance.

Environment: MFC, Visual Studio 2005, C#, LeadTools.

CT Summation, California, USA November 2006 - December

2007

Project: Creating View specific toolbars and including Optional Case

Conversion functionality for iBlaze

Role: VC++ (MFC) developer

. Added Persistent View specific toolbar to different viewers in iBlaze

using MFC. Each options will have event handler to invoke specific

functionalities to that view using VC++ (MFC)

. Included the Optional Case Conversion functionality. The Optional Case

Conversion allows iBlaze user to open the older version of iBlaze case

into new iBlaze environment. The user is provided with option to

convert the case during case open. If use chose to convert the case,

the new schema and changes will be updated to the case. These changes

are included using VC++ (MFC).

. Created a wrapper class over the Unmanaged code for SaturnDB created

using C. Using the wrapper, increased the performance of iBlaze case.

. Worked on production Support for bug fixes.

Responsibilities:

. Involved in UI Design and development using MFC, C++.

. Implementing Optional Case Conversion using C++.

. Involved in Code review activities

. Responsible for Estimation, Development and Defect Fixing.

Environment: MFC, C++, Visual Studio 2005/6.0.

CSRE - IITB, Mumbai, India June 2004 -

October 2006

Project: Digital Image Processing for Spatial Images.

Role: VC++ (MFC), C++ developer

The main objective of the project is to develop an Image processing desktop

package for Spatial Data. Developed following image processing techniques

like

. Image Classification using Artificial Neural Networks (ANN).

. Image Conversion from Geo-Tiff to RAS and BMP. The image conversion

tool reads the header details and pixel values of Geo-Tiff, and

converts the pixel values to RAS and BMP with proper converted header

information accordingly.

. Knowledge extraction using PCT algorithm for spatial data.

Responsibilities:

. Designing the UI using VC++ (MFC), C++. Image tiling is implemented to

open the bigger images in the MFC Image viewer.

. Implemented Geo-Tiff to RAS image conversion.

. Responsible for Estimation, Development and bug fixes.

. Running performance matrix and samples datasets.

Environment: VC++ (MFC), C++, Visual Studio 2005/6.0, Image processing.

Education:

Bharathidasan University, Thiruchi, India (Jun 2001 - Apr 2004) - 74.48 %

Master of Computer Application (MCA)

Project Thesis: Spatial Image Classification using Artificial Neural

Network (Ann ) Algorithm, IIT-Bombay

Periyar University, Salem, India (May 1998 - Apr 2001) - 72 %

Bachelor of Computer Science (BSc)

Project Thesis: Snake game using C graphics and key interrupts.



Contact this candidate