Friday, October 31, 2008

Spark a global career with Microsoft - international opportunities

Did you know Microsoft has some great development opportunities located around the world? My team is taking a world tour this fall, winter and spring to locate top engineers for these software development roles that will help define and shape the next version of just about everything Microsoft is working on. Whether you’re a recent college grad or have management-level experience, I encourage all candidates to apply now!

So if you are an engineer that resides outside of the US and are ready to make an impact on a variety of technologies, look no further. Below is just a sampling of Microsoft teams currently looking for the right candidates to drive innovation forward:

  • Shanghai and Beijing, China: This is a very exciting time to join Microsoft China as China is home to many of our major business groups. Be a part of a team working on leading edge technologies in a fast-growing environment. Make a significant impact on projects that can affect millions of users worldwide.
  • Copenhagen, Denmark: This dynamic team has great influence over Microsoft's next line of financial, customer-relationship and supply-chain management solutions that help businesses work more effectively. 
  • Cairo, Egypt:  Microsoft is looking for the best and the brightest to fill software design engineer, software design engineer in test and PM roles in one of the most exciting cities in the world. 
  • Paris, France:  Employees heading to Paris will be part of Musiwave, a Microsoft Subsidiary and leading provider of mobile music entertainment services to operators and media companies worldwide.  
  • Dublin, Ireland: Who says a small city can’t make big changes? Impact the next-generation Edge Computing Network for Windows Live, MSN, and other Microsoft sites or drive the delivery of features and services for mobile phones as part of Mobile & Live strategy. This location also houses Office 14, including Office Tube, Multi-lingual Interface Screen Tips, PLEX (setup & authoring features). 
  • Redmond, US/Richmond, Canada opportunities: At these Windows Core Networking locations, employees can impact peer-to-peer networking, enterprise networking, transports, Windows networking developer platform and connectivity and wireless networking.   Shape how MSN Search makes Web searches more useful by providing the most relevant results for the most popular search queries on the Web.
  • Oslo, Norway:  From inside the enterprise and across the Web to the desktop and the mobile device, be a part of the most advanced search platform and add-on solutions to help our customers overcome all of their information access challenges with Fast, a Microsoft Subsidiary. 
  • Zurich, Switzerland:  Build the next generation of a VOIP client that provides enterprise quality instant messaging, Voice over IP and data collaboration.  Drive the vision for Enterprise Telephony, Instant messaging, Presence and Conferencing as part of Office Communication Platform.
To apply to Microsoft for the above or any other core software engineering roles: 

  • Americas: To apply if you are from Mexico or Latin American, send your resume/questions to sarec@microsoft.com. To apply if you are from Canada, send your resume to carec@microsoft.com.
  • Asia and Australia: To apply if you are from this region, send your resume/questions to recasia@microsoft.com
  • Europe: To apply if you are from Eastern, Central or Western Europe, send your resume/questions to cerec@microsoft.com. To apply if you are from Russia, Ukraine or Belarus, send your resume/questions to russrec@microsoft.com.
  • Middle East/Pakistan/India/South Africa: To apply, find your region and send your resume to: Pakistan – pakcv@microsoft.com;  Egypt – egyptres@microsoft.com; Turkey – turkres@microsoft.com; India – india_cv@microsoft.com;  All other regions - send your resume to mearec@microsoft.com.
  • United States:  If you live in the US and you are interested in core tech roles outside of the US, send your resume/questions to Globalso@microsoft.com. 
  • University: If you are currently enrolled in a university and looking for either full-time or internship roles, feel free to submit your resume/questions directly to msgradcv@microsoft.com.
Remember, you can always send your resume to http://www.microsoft.com/college/overseas.mspx. 

Note to potential applicants: if you've had a phone interview before, it's a good idea to at least wait for six months before you re-apply. Similarly if you've had an in-person interview, it's a good idea to wait at least one year before you re-apply.

Wednesday, October 29, 2008

Free Visual Studio Add-In for Code Navigation and Refactoring

If you are a fan of CodeRush and Refactor! Pro from DevExpress, you can get CodeRush Xpress for C#, which is a free Visual Studio 2008 Add-In with a sprinkling of offerings from both CodeRush and Refactor! Pro.

You can expect a few features from CodeRush that help you navigate through your code in Visual Studio 2008:

  • Find any File or Symbol
  • Tab to Next Reference
  • Expand/Shrink Selection
  • TDD-Style Intelligent Declaration Based on Usage
You can also find various refactorings for Visual Studio 2008 from Refactor! Pro:

Inline Delegate - Convert method to Inline Delegate ( Anonymous Delegate )
Compress to Lambda Expression - Converts an anonymous method into a lambda expression
Extract Method to Type - Allows you to extract a method from one type into another
Here are the complete set of features for CodeRush Xpress for C#:

Editor Features

  • Duplicate Line
  • Highlight Usages
  • Clipboard Features
  • Smart Cut/Copy
  • Paste Replace
  • Enhanced Selection Abilities
  • Extend/reduce selection
  • Camel-case selection
Navigation Features

  • Camel-case Navigation
  • Tab to Next Reference
  • Go to File
  • Go to Symbol (QuickNav)
TDD - Declaration from Usage

  • Types
  • Declare Class
  • Declare Delegate
  • Declare Enum
  • Declare Enum Element
  • Declare Interface
  • Declare Struct
  • Members
  • Declare Constructor
  • Declare Event Handler
  • Declare Getter
  • Declare Method
  • Declare Property
  • Declare Property (auto-implemented)
  • Declare Property (with backing field)
  • Declare Setter
  • Variables
  • Declare Field
  • Declare Local
  • Declare Local (implicit)
Refactorings

  • Add/Remove Block Delimiters
  • Combine Conditionals (merge nested "If" statements)
  • Compress to Lambda Expression
  • Compress to Ternary Expression
  • Convert to Auto-implemented Property
  • Convert to Initializer (use object/collection initialize when possible)
  • Create Backing Store (converts Auto-implemented Property to standard Property with get and set)
  • Decompose Initializer
  • Decompose Parameter
  • Expand Lambda Expression
  • Expand Ternary Expression
  • Extract Method to Type
  • Flatten Conditional
  • Introduce Local (introduce variable)
  • Inline Delegate
  • Inline Temp (inline variable)
  • Make Explicit
  • Make Implicit
  • Move Type to File
  • Name Anonymous Method
  • Name Anonymous Type
  • Reverse Conditional (invert "if")
  • Split Conditional (split complex "If" statements)
  • Use StringBuilder
  • Use String.Format
Seriously, those are a fantastic set of features from CodeRush and Refactor! Pro for FREE!!!!!!

Download the free Visual Studio Add-in, CodeRush Xpress for C#, here.

Enterprise Library 4.1 Released

Enterprise Library 4.1 is primarily a bug fix with most of the changes and ehancements occuring in Unity. The top 4 changes to Unity worth noting are:

  • Generic Decorators Support is fixed.
  • Support for Injection of Arrays.
  • New Interception Extension Mentioned above.
  • Better Integration with the Enterprise Library Policy Injection Application Block.
  • If you haven't picked a dependency injection framework, now is a good time to look at Unity.

You can check out my Enterprise Library Tutorials and Unity Tutorials for more information.

Silverlight Toolkit Now Available For Download

The Silverlight Toolkit is a collection of components dedicated to making you - the Silverlight Developer - as productive as possible writing Silverlight.  The full Silverlight Toolkit is available under the Microsoft Public License, an OSI-Approved license that allows full reuse of the code.

Download it here

Monday, October 27, 2008

Free ASP.NET and Windows Forms Chart Controls - Visual Studio 2008

The Data Visualization Group within the SQL Server Reporting Services Team created stand-alone ASP.NET and Windows Forms Chart Controls for the .NET Framework 3.5 and Visual Studio 2008, similar to what has been already available as built-in chart functionality in SQL Server Reporting Services 2008.

These are FREE ASP.NET and Windows Forms Chart Controls you can download for use with Visual Studio 2008.

There are several links to get the "full package" for these free chart controls:

  • First, you can download the ASP.NET and Windows Forms Chart Controls for .NET Framework 3.5 SP1 here.
  • Then download the Language Pack for the Free Microsoft Chart Controls here.
  • Download the Microsoft Chart Controls Add-on for Microsoft Visual Studio 2008 here. This package provides Visual Studio toolbox integration and IntelliSense for the ASP.NET and Windows Forms Chart controls.
  • Last but not least, download the documentation and API for the free ASP.NET and Winform Chart Controls here.

You can also check-out some samples for the Microsoft Chart Controls as well as discuss them in the forums.

A new refreshing Microsoft.Net logo


Microsoft's .Net team has come up with a new logo, with a refreshing blue wavy look. That's what Scott Barnes say about this.

We needed a logo that was in sync with the key values that we want .NET to stand for: consistency, robustness and great user experiences. We also wanted a logo that conformed to the design principles that are driving Microsoft’s brand identity evolution and is reflected in newer brands such as Silverlight, Surface and more. Finally, we needed a logo that is more strongly aligned with the portfolio of brands that .NET is most strongly aligned with: Silverlight, Visual Studio and the AppPlat server products. The result is a design we refer to as the “wave.” The design is strong, simple and distinctive. The suggestion of the letter ‘N’ in the design will become instantly recognizable over time as shorthand for the .NET brand name.

A new version of StructureMap has been released

StructureMap is a Dependency Injection tool written in C# for .NET development. StructureMap is also a generic "Plugin" mechanism for flexible and extensible .NET applications. It took nearly a year to roll out this release. Below are list of changes available in this release.

The new functionality in StructureMap 2.5:

  • Completely revamped Assembly scanning options
  • Cleaner, more predictable way to initialize a Container.  StructureMapConfiguration is now deprecated, please use ObjectFactory.Initialize().
  • Optional setter injection
  • All new abilities to query the configuration of a Container
  • The ability to use StructureMap with ZERO Xml or attributes by default
  • The ability to add services at runtime. You can now programmatically add an entire Assembly at runtime for modular applications that might not want all services to be loaded at startup.
  • An auto mocking container based on Rhino Mocks 3.5. I was a doubter on the validity of AMC, but I'm sold now that I've used it
  • Contextual object construction
  • More sophisticated auto wiring rules
  • Supporting NameValueCollection and IDictionary types
  • Far more extensibility
  • Interception and post processing hooks for you AOP enthusiasts. StructureMap will NOT include its own AOP engine, but will allow you to use the runtime AOP technique of your choice.
  • More configuration options in both Xml and the Fluent Interface. Completely revamped the Registry DSL.
  • More options for modular configuration (mix and match Xml configuration or Registry's at will) -- which basically had to trigger:
  • Completely revamped diagnostics, including the Environment Testing support
  • Transparent creation of concrete types that are not explicitly registered
  • Create objects with explicit arguments passed to the container
  • Use the underlying Container independently of ObjectFactory
  • Pluggable auto registration with your own custom Type scanning policies
  • StructureMap is now strong named (thanks to Steve Harman)
  • Pull configuration from the App.config (thanks to Josh Flanagan)
  • Generics fixes (thanks to Derrick Rapp)

Tuesday, October 21, 2008

Laraib's Birthday


Exactly 4 years ago, nearly 7 in the morning, we were blessed with a beautiful gift, which can not be matched by any other gift. GOD blessed us our very first child, a cutest baby girl. I am amazed how fast time has passed on, and she had started her schooling.

There teacher informed us that they encourage students to share and celebrate there birthday in school. So her mother has prepared a lot of things for that occasion. She is sending Biryani, Shami Kabab, and a delicious cake for all students.

We have seen a lots of up and down of her. She is a quick learner, but most of today's lot capture faster than us. She is naughty, very much active, mostly assertive, but requires a basic trust relationship to build first.

She is a good teacher too, we have seen so much of that of her, that sometime we are amazed of her skills. Whatever she learns, she pass it on to her younger brother Ahsan. Do like this, don't do like that. It has given us a cushion too, we don't have to rigorously work with Ahsan for all those things.

At the end I will say Laraib is a really blessing for us, a presence which cannot be ignored.

I pray for her health, wisdom, strength and sense of good things in life.