jump to navigation

Five trends that every software engineer should know December 19, 2011

Posted by bkrugman in Software Engineering.
trackback

During the semester we looked at a variety of methodologies and trends that affect software engineering. While I am focusing on the trends that I feel are extremely important to software engineering the methodologies that we covered interaction and involvement within all of the trends that we looked at this semester. Software engineering is moving at a fast pace away from having separate roles within an IT team and combing those role to create more rounded engineers.

Visualization/Reporting:
Visualization of data points might be something that is more valuable to end users, but I believe that a software engineer should be bear in mind how the data from their application can be used and how it should be used. Part of the tasks of a software engineer is to not just focus on what needs to be delivered for a project to be successful, but to also think about how pieces and data that is generated from the project can help to steer and drive the business. Thinking about how the data will be used and reported on should play a large impact on the software engineer especially when he/she is performing data modeling, user validation, and any other aspect that has to do with ensuring that all of the data that is being consumed by the software is valid and beneficial.

Real Analytics:
The importance of a software engineer considering how the data will be used to perform any analytical analysis is another area that I think software engineers occasionally forget to consider. What makes this important is because analytics can be used for not only improving the overall business, but also improving the software development process. As a project is moving through each area within the life cycle project management is compiling data on how the project is going, what the burn rate is of time, is the software engineering team reaching there goals and other areas like that. While the software engineer might not have direct control over the data that is being compiled they need to think about what they can do to improve the results. This could be something as simple as working with deployment staff to make the deployment process smoother. Another thing could be to ensure strong documentation so new and current members can understand the path that the project is moving and be able to ramp up faster. Even though analytics can be used by the business to perform all sorts of analysis I think that software engineers need to take into considering what type of analytics might be applied during the software development process as well as ensuring the data integrity so the business is able to produce results that will meet there needs.

User Engagement:
Probably one of the most important trends that I think a software engineer needs to take into consideration and think about. A piece of software can be build as cheap as possible with as many features as someone wants, but if the user’s needs are not met the software is considered a failure within the business. This is why involving the user base through the entire software development process is extremely important and software engineers need to remember to do this constantly. It does not matter what methodology the software team is using user engagement is important in all of them. Even though some might not be as flexible if the user needs something changes having the software engineer getting the constant feedback will help them to produce a product that will be considered a success, because the user is able to have input. This is something that I think sometimes lacks in software engineering, because there needs to be some limits in what a user is able to change or want but by having constant user interaction the software engineer and team is able to manage not only the project but also the users expectations.

Cyber Intelligence:
If your data is not secured then it is able to be exposed by an ever-growing threat. As a software engineer you should always put securing application and business data at the top of your list for things to be considered during designing, building, testing and maintenance. However, building a system to not just secure the application and business data but to also allow for detection of potential threats and resolution of those threats needs to be considered. As a software engineer you might not always be involved in development practices. It is other practices like analysis of data, determining root causes of breaches and bugs, and working with network teams to develop new security protocols that can provide a software engineer to gain experience and develop a new way to think about new standards that a business should implement to protect them from potential outside threats.

CIO as a Revolutionary
As the IT department is starting to gain more and more ground within business. I think that the concept of a CIO as the person that pushes for business changes is something that is and will continue to affect software engineers. What is nice about this trend is in the past the IT department has been considered a necessity that has not always had direct input into the direction of businesses. However, since technology is becoming an integral part of everyday life businesses are starting to look more to the IT department to help with envisioning and deploying ways to reach a wider audience. This is where having a CIO behave as a revolutionary and push to change bad business and development practices for a more standardized and established approach can help to change a businesses entire culture. This is a trend that effects software engineering in more of an indirect way, but it is a trend that all software engineers should be willing to embrace and support.

Advertisements

Comments»

No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: