Pros and Cons of a Career in .NET Engineering
.NET engineers are software developers who specialize in using Microsoft's .NET Framework to build Web-based applications. Learn more about the pros and cons to decide if a career as a .NET engineer is right for you.
|Pros of a becoming a .NET Engineer|
|High median salary for application software engineers ($95,510, as of May 2014)*|
|Excellent job growth predicted (22% from 2012-2022)*|
|Can work in a wide variety of industries (finance, healthcare, manufacturing, etc.)*|
|Jobs may have a telecommuting option*|
|Cons of a becoming a .NET Engineer|
|Could work long hours (almost 25% worked more than 40 hours a week in 2012)*|
|Continual need to educate yourself about the latest technological developments, often at your own expense*|
|Long hours spent in front of a computer can be hard on the body, especially the back, wrists and eyes*|
|Work is highly detail oriented and can be repetitive*|
Source: *U.S. Bureau of Labor Statistics.
Essential Career Information
Job Description and Duties
.NET engineers design and develop software using Microsoft's .NET Framework, which allows them to develop programs specifically for use on the Web. Working as a .NET engineer, you would be present throughout the entire software development process, from the initial idea to the completed to application. Your work would begin with an idea for a particular .NET application, often with customer input. After forming your idea, you would design the application and then meet with computer programmers to provide them with instructions on how to code the software. After a software program is completed it's tested for problems. If any arise, you would modify the design to resolve the bugs. Even after your work is released on the market, the developer may still revisit the program to create upgrades or provide maintenance.
Since Web-based applications are used by a variety of different businesses, you can work in almost any industry. Typically, you would work in a comfortable office environment, but may have to spend many hours of each day sitting in front of a computer. Most developers work full-time schedules, and overtime is extremely common in this industry, with almost 25% of employees reporting workweeks longer than 40 hours in 2012.
Salary and Job Growth
The U.S. Bureau of Labor Statistics (BLS) does not compile data specially tailored to .NET engineers. However it does provide statistics for applications software developers, which is what .NET engineers basically are. In 2014, the BLS estimated that they earned a yearly median salary of about $95,510, which is well above the national average. The BLS also predicted that jobs for applications software developers would increase at a much-faster-than-average rate of 22% from 2012-2022. Growth is largely attributed to the ever-increasing demand for software used in computers, mobile devices and consumer electronics.
What Are the Requirements?
A bachelor's degree in computer science, mathematics or software engineering is typically required to obtain a position as a software developer. However, some employers may also prefer or require you to have a master's degree. While attending school, it's important for you to take classes in programming and software creation. However, your learning doesn't stop upon graduation; since technological advancements rapidly occur, it's important for you to continually learn new development tools and programming languages as frequently as possible.
Developers who work in a particular industry are often required to develop pertinent knowledge and skills to develop useful applications that meet their employer's needs. For example, developers working in a hospital environment may need knowledge of healthcare billing practices and policies, while those working at a bank may need financial knowledge.
To be a successful .NET engineer, you'll also need to develop nontechnical skills. Since working as part of a team is common, you'll need to develop strong communication skills and the ability to collaborate and work well with others. You'll also need excellent problem-solving and analytical skills. Once a project has begun, you'll most likely be working on your own most of the time, so the ability to stay on task and motivate yourself will be key for completing projects on schedule. Attention to detail and the ability to stay organized are also important, since you could be simultaneously developing multiple applications.
Job Postings from Real Employers
Employers are particularly interested in applicants who possess a bachelor's degree and a few years of experience. Employers also usually list the development tools and programming languages candidates need to be familiar with, such as SQL, XML, C# and ASP.NET. The following job posts obtained in April 2012 don't paint a complete picture of the job market, but they can provide insight into the qualifications employers look for:
- The Boston office of an information technology company was looking for a .NET developer with .NET engineering experience who could help design and develop customer-facing Web applications. The employee would usher the product through the entire development life cycle and collaborate with others about the development of complex projects. The employer sought candidates with 3-5 years of experience with .NET, ASP.NET, C#, HTML, SQL and XML, a bachelor's degree in computer science or a similar area and leadership and problem-solving abilities.
- A consulting company in Utah was hiring a motivated, detail-oriented .NET engineer. The stated qualifications included a minimum of a bachelor's degree in computer science or a related area, at least five years of experience, knowledge of object-oriented development, experience with a wide range of messaging technologies and the ability to accurately estimate the time required to develop software. Requirements also included excellent communication skills and experience with C#, .NET 4.0, ASP.NET, XML, LINK-SQL, Team Foundation Server 2010 and Entity Framework.
How to Get an Edge in the Field
Build Your Experience
Since employers generally seek .NET engineers with experience, you should take advantage of any opportunities that might arise to use your .NET engineering skills. If you haven't yet attended college, look for a program that offers internship opportunities, which can give you a head start on gaining that experience. If you've already completed a degree program, look for ways to use hone your skills, such as providing .NET development services to small local businesses that may later provide you with a reference. Creating a portfolio of your projects can also be a way to help you to stand out.
Microsoft offers the Microsoft Certified Professional Developer (MCPD) certification, which, according to the company, can help you demonstrate your technical expertise and increase your job opportunities. If you're concerned about possessing a sufficient level of knowledge to earn the certification, you can enroll in .NET training classes. They can be found online through various certified vendors and even through Microsoft itself. Books are also available that can guide you through using the .NET Framework and its various components, and some schools offer certificate programs in .NET developer training. After completing a thorough training course and amassing 2-3 years of development experience, consider sitting for MCPD certification exam, which lets potential employers know that you're a trained and experienced .NET expert.
Alternate Career Paths
If you decide that being a .NET engineer isn't for you, you'll have a number of other options available. If you already hold a bachelor's degree and this is the case, chances are it's in computer science or engineering. Either of which can help you obtain employment in a variety of other similar professions. If you don't yet have a degree but you still want to pursue a career working with computers, you still have options. Below are just a few you might want to consider.
Website Designer/Web Developer
If you enjoy development, but you don't want to be tethered to software projects, consider pursuing a career in website design or Web development. Both positions involve coding, but a Web developer concentrates on the technical nuts and bolts of website construction, while a website designer focuses on the visual aesthetics of a site. A high school diploma or its equivalent is the minimum educational requirement to become a Web developer, but many employers prefer you to have a bachelor's degree. To become a Web designer, a bachelor's degree in graphic design is typically required.
The BLS predicted that jobs for Web developers, security analysts and computer network architects would increase 22% from 2010-2020. During that same decade, jobs for graphic designers were predicted to increase 13%. As of May 2011, Web developers earned a median annual salary of about $78,000, while graphic designers earned a median yearly salary of around $44,000.
Computer Support Specialist
If you don't like the thought of working alone for long stretches of time and you enjoy interacting with people, then consider becoming a computer support specialist. These professionals provide technical support and assistance to consumers and organizations that need help with computers or related peripherals. Education requirements range from postsecondary training to a computer-related bachelor's degree, depending on the level and complexity of support provided. The BLS estimated that computer support specialists earned a median annual salary of about $48,000 in 2011. The organization also predicted that the computer support specialist field would grow 18% between 2010 and 2020.
Individuals who enjoy writing software code but not leading teams may prefer careers as computer programmers. These professionals write code to build computer programs and then test or debug them. The job involves frequent interaction with software developers, and, at times, programmers may also assist with the design of programs. An associate's degree in computer science or a similar field may be sufficient to gain employment in this field, but many employer's require you to have a bachelor's degree. The BLS predicted that jobs for software developers would increase 12% between 2010 and 2020. The median annual salary for computer programmers in 2011 was about $73,000, according to the BLS.