Software Developer III

Houston, Texas
30 Oct 2016
17 Dec 2016
Oil and Gas
Contract Type
Full Time
Develop, support and maintain Weatherford related software applications and libraries as part of a team or independently.  Provide technical leadership for projects and advise more junior engineers.
Strives to obtain a functional understanding of Weatherford operational requirements for any development task.
Participate as a senior software development team member
Estimate or assist in estimation of software modules to be developed.
Works with team mates to estimate the relative size of tasked items
Works with team mates to decompose Items into tasks and to estimate the amount of work required for each task
Collaborates with other team mates to decide what Items can be committed to by the team for each sprint.
Provides technical support and advice to product owner
Collaborates with other team mates to organize the team and the work to be performed
Volunteers to work on and attempt to complete tasks
Identifies impediments to completion of tasks and brings them to the attention of the other team members or manager for resolution
Communicates issues with team or manager regarding excessive distractions, interruptions, or other difficulties and assists in removal or resolution of problems
Raises issues to clarify requirements or software functionality and behavior
Provides feedback to manager and team regarding ways to improve processes and performance
Develops and assists in the design of high quality software, both new development and maintenance development, in a manner consistent with best practices and in adherence to Weatherford and team software development guidelines, rules, processes, and practices.
Accepts coaching from more experienced team members and management. Provides coaching to less experienced team members.
Provides feedback to management on other team member performance.
Collaborate cross-functionally with other internal and external team members to solve business and technical problems
Performs unit tests on all software developed and, where possible, produces automated unit tests or testing scripts to aid in future development and regression testing
Assists in system testing as required.  May develop test use cases and assist in test planning.
Documents software development in an appropriate manner consistent with Weatherford guidelines.
Follows Weatherford guidelines related to the protection of intellectual property and avoiding unwarranted entanglement in non-Weatherford intellectual property
Records progress towards completion of tasks within the sprint, including actual effort and expected remaining effort
Keeps abreast of technological advancements in related fields and recommends training requirements to management
May perform multiple roles within team as required, including standing-in as team leader.
Attends all stand-ups and other mandatory team meetings in a punctual manner
Learns new skills and areas of knowledge as required to assist in completion of tasks committed to for the sprint.
Assist other teams as required to further overall Weatherford software development goals.
Assist in the specification or recommendation of other operational or technical activities or requirements related to the deployment of software applications.

Proficient in C# (expectation is language version 5.0 or above, including language features Linq, multithreading with Tasks and Async etc)
Programming for the Dot Net platform with an understanding of Dot Net specific concepts.
Basic Microsoft SQL Server Administration (ideally 2012 or above)
Proficient at T-SQL programming, schema design, and profiling and debugging T-SQL code.
IIS: Administration and configuration (ideally Windows Server 2012).
Software development for HTTP handlers, IIS app pools, etc.
Web Services
Web Sockets
XML and JSON data, and related software concepts
Familiarity with software design patterns MVVM, Dependency Injection, and Inversion of Control.
Security concepts such as Authentication and Impersonation.
Excellent programming and problem solving skills
Good communications skills, both verbal and written.
Knowledge of all aspects of Software Development Life Cycle
Proficient with Visual Studio 2013 and above in a TFS environment
NuGet packaging and software distribution concepts.
GUI design skills and knowledge
Knowledge of related software development disciplines (e.g. Testing/QA, Technical Writing, Business Analysis, System Architecture, Configuration Management, etc.)
B.S. degree in computer science, engineering, math, physics, or related major and minimum 5 years of proven software development experience
Minimum of 8 years of proven software development experience with demonstrable record of advancement
Minimum 3 years experience with C#
Minimum 3 years experience with Visual Studio
Minimum 3 years experience working with small cross functional teams
Minimum 4 years experience developing n-tier client/server or services applications
Minimum 3 years experience with Microsoft .NET 2.0 or greater
Minimum 1 years experience with WPF
Minimum 3 years experience with database development
Minimum 3 years experience working with TFS or other code management system
Minimum 4 years experience building Windows desktop applications
Minimum 4 years working knowledge of WITSML and real-time architecture
The physical ability to immediately respond to emergency situations.
Ability to travel on an infrequent basis
Ability to obtain a valid passport
Agile development, particularly Scrum
Strong math and physics background
Oilfield services or oil and gas knowledge
Knowledge of WITS protocol
Knowledge of LAS files
Working knowledge of drilling and exploration processes
Knowledge of service companies on a drilling rig
Domain specific language
Web/cloud services
2+ years experience with WPF
3+ years experience Visual Studio
3+ years experience TFS
MS development certifications
3+ years experience C#
2+ years experience MS SQL Server