Resume’
Email: dharmashukla@gmail.com Phone: 425-301-0901 (cell), 425-703-2653(work)
Current Position: Partner Software Architect, Microsoft Corporation, Redmond, WA.
Summary
- A seasoned, hands-on architect with 16+ years of software development experience with solid design, execution and management skills.
- Exceptional track record at Microsoft at building and shipping products.
- Experience with full product cycle for multiple Microsoft products ranging from enterprise software, development tools, programming models and APIs, to Windows and Office components, and Cloud services.
- Experience in incubating ideas at Microsoft from defining the vision, getting the exec buyoff, to design/implementation and shipping the product.
- Passionate about building developer platforms, APIs, browser development and cloud services.
Work Experience
- 4/09- Present – Software Architect, AppFabric Server 1.0, Microsoft
A founding member of the Microsoft’s Application Server (AppFabric) team; responsible for the overall application model for building and managing loosely coupled composite apps which run on Windows Azure as well as on-premises.
- 11/06 – 4/09, Software Architect, Live Mesh 1.0 and Live Framework 1.0, Microsoft
As one of the early members of the Live Mesh project led by Ray Ozzie, designed the architecture of developer platform for Live Mesh including, scalable cloud and device runtimes (for cache, sync and device connectivity), programming model and a open protocol stack. Designed and implemented a programming model to add data caching and synchronization capabilities to any application and, a symmetric and RESTful programming model across cloud and devices. Also, started an incubation to integrate the IE with Mesh whereby, caching and synchronization of applications and data is done natively from within IE.
- 3/03 – 11/06, Software Architect, Windows Workflow Foundation (WF), Microsoft
As a founding member of the Windows Workflow Foundation (WF) team, was responsible for designing the technology including its continuation based workflow runtime (layered on top of CLR), .NET based programming model, visual debugger, and designers. Created an extensible model for executing domain specific, resumable program statements (called activities) which led to an eco-system of ISVs. WF shipped as part of .NET 3.0/3.5, Vista and Office 12.
- 9/99 – 2/03, SDE/Development Lead, BizTalk Server (2000,2002, 2004), Microsoft
Led the design and development of BizTalk’s messaging API, management APIs, as well as developer experience including a Visual Studio based project system, and Visual Designers for XSD, XSLT and XLANG/S.
- 1/98 – 8/99, SDE on the BizTalk Server 2000 and VC libraries team, Microsoft (contract position)
Designed and developed COM based programming model for BizTalk’s data transformation engine. Prior to that, worked on Visual C++ Libraries (ATL and MFC) team.
- 10/96 – 12/97, Development Lead, Fujitsu Software
Led the design and development of Fujitsu’s ActiveX/OLE control container and IDE. Features included, visual data binding, automation model, scripting environment, control containment and hosting and native integration with Fujitsu’s DBMS layer.
- 1/95 – 9/96, Research Associate, Center for Development of Advanced Computing (C-DAC)
Developed a continuation based workflow engine in C++ that formed the basis for CDAC’s Forms processing and Document Management systems.
Publications
- Essential Windows Workflow Foundation, co-authored with Bob Schmidt, ISBN: 0321399838, Addison Wesley Longman
- Simplify Development With The Declarative Model Of Windows Workflow Foundation, co-authored with Don Box, MSDN Magazine, January 2006
- Aspect-Oriented Programming Enables Better Code Encapsulation and Reuse, co-authored with Chris Sells and Simon Fell, MSDN magazine, March 2002.
- Extending ATL 3.0 Control Containment to help you write Real World Control Containers, co-authored with Chris Sells, Microsoft Systems Journal Dec 1999
Patents Granted
- Declarative Representation for an Extensible Workflow Model, Patent #7464366 granted on 12/9/2008
- Executing Pages Of A Guided Process Application In Parallel, Patent # 7533121 granted on 5/12/2009
- Data Centric Workflows, Patent#7363628 granted on 4/22/2008
- Componentized And Extensible Workflow Model, 1/31/2005 Granted: 7451432 granted on 11/11/2008
- Framework For Seamlessly Authoring And Editing Workflows At Design And Runtime, Patent #7565640 granted on 7/21/2009
- Function Objects, 9/14/2000, Patent # 7159185 on 1/2/2007
- A Method and System for Designing Customizable Applications and User-Interfaces Based on User-Defined Policies and Metadata, Patent #7464367 granted on 12/9/2008
- Orchestration Designer, Patent #7519947 granted on 4/14/2009
- Mapping Tool Graphical User Interface, Patent #6823495 granted on 11/23/2004
Patents Filed
- Hosted Application Sandbox Model, filed on 4/24/2009
- Data Access Programming Model For Occasionally Connected Applications, filed on 4/6/2009
- Programming model for installing and distributing occasionally connected applications, filed on 3/11/2009
- Programming model for synchronizing browser cache across user’s devices and web services, filed on 3/11/2009
- Programming model for application and data access and synchronization within virtual environments, filed on 3/11/2009
- Interactive Design Environments To Visually Model, Debug and Execute Resource Oriented Programs, filed on 10/17/2008
- Device Authentication Within Deployable Computing Environment, filed on 10/9/2008
- Declarative Programming Model For Modeling And Execution Triggers For Resource Oriented System, filed on 10/14/2008
- Declarative Programming Model For Authoring and Execution of Control and Data Flow For Resource Oriented System, filed on 10/14/2008
- Online and Offline Applications, filed on 3/31/2008
- Computing Environment Representation, filed on 3/27/2008
- Application Management Within Deployable Object Hierarchy, filed on 3/20/2008
- Computing Environment Configuration, filed on 3/20/2008
- Computing Environment Platform, filed on 3/20/2008
- Self-Describing Authorization Policy For Accessing Cloud Based Resources, filed on 3/5/2008
- Workflow Execution Plans Through Completion Condition Critical Path Analysis, filed on 12/18/2007
- Management of Distributed Storage, filed on 10/31/2007
- Preserving A Process Instance For Use By Different User Interfaces, filed on 10/12/2006
- A Framework For Modeling Continuations in Workflows, filed on 3/30/2006
- Abstract Execution Model For A Continuation-Based Meta-Runtime, filed on 3/30/2006
- Framework For Modeling Cancellation For Process-Centric Programs, filed on 3/30/2006
- Asynchronous Fault Handling In Process-Centric Programs, filed on 3/30/2006
- Declarative Model For Concurrency-Control Across Lightweight Threads, 3/30/2006
- Workflow Debugger, filed on 6/21/2005
- Interactive Composition Of Workflow Activities, filed on 6/17/2005
- An Extensible Framework for Designing Workflows, filed on 1/31/2005
- Framework To Model Cross-Cutting Behavioral Concerns In The Workflow Domain, filed on 1/31/2005
- Unified Model for Authoring and Executing Flow-Based and Constraint-Based Workflows, filed on 1/31/2005
- Ink-Enabled Workflow Authoring, filed on 2/23/2005
- Programming Interface for a Componentized and Extensible Workflow Model, filed on 2/23/2005
- Mapping Tool Graphical User Interface, filed on 8/18/2004
- Extensible Multi-Language Compilation, filed on 10/3/2003
- Partner Management, filed on 7/11/2003
- Deployment of Configuration Information, filed on 7/12/2002
Education
Bachelor of Engineering in Electronics and Telecommunication, 1990-1994, GPA 4.0
Citizenship
US Citizen
References
Available upon request
Essential Windows Workflow Foundation