Duties and Responsibilities
To perform this job successfully, an individual must be able to perform each essential function satisfactorily, including the following essential duties and responsibilities. Reasonable accommodations may be made to enable individuals with disabilities to perform these essential functions. Other essential duties and responsibilities may be assigned.
- Leads and/or participates in Release and Iteration Planning meetings with testers, engineers, and users.
- Employs organizational design patterns to develop application logic.
- Pairs with other engineers to solve complex problems.
- Designs Unit Tests as part of Test Driven Development.
- Works with Quality Assurance to develop Acceptance Tests.
- Participates in the design and development of Object Oriented software solutions.
- Coordinates the construction and maintenance of an internet-based courseware distribution system and assists in planning for future growth. Assists in establishing and maintaining intranets and networks.
- Analyzes, designs, tests, and evaluates systems such as local area networks (LANs), wide area networks (WANs), internet, intranets, and other data communication systems.
- Researches related products and and makes necessary hardware and software recommendations.
- Analyzes users’ needs, and designs, creates, and modifies general computer applications software or specialized utility programs.
- Develops/analyzes algorithms that solve programmatic problems.
- Employs software configuration management tools (e.g., Mercurial, GIT).
- Develops and deploys web applications based on MVC4 and 5 as well as Windows client applications.
- Develops and deploys solutions based on SOAP and RESTful webservices.
- Designs and implements maintainable and scalable database schemas.
- Tests and coordinates changes to databases.
- Queries and manipulates relational data using Structured Query Language (SQL).
- Identifies optimal indexing scenarios.
- Employs triggers and constraints to maintain business rules.
- Remotely administers a MS SQL Server.
- Assists in planning and coordinating security measures.
- Performs functions related to data integrity, backup, and keeping databases secure.
- Solves technical problems pertaining to database design, internet-based application development, and multimedia-based training delivery.
- Occasionally interacts with customer services representatives, technical support staff, and customers.
- Adopt organizational Values and Practices.
- Performs any and all other duties, as assigned.
This job has the following non-essential duties and responsibilities. Other non-essential duties or responsibilities may be assigned.
- Mentors junior team members.
- Performs any and all other duties, as assigned.
The supervisor for the Software Engineer is the Chief Systems Architect. The supervisor makes assignments by defining objectives, priorities and deadlines, and assists the employee with unusual situations that do not have clear objectives. The employee plans and carries out successive steps and resolves problems and deviations in accordance with instructions, policies, and accepted policies. The supervisor reviews the work for technical adequacy and conformance with practice and policy.
Knowledge, Skills and Abilities
The requirements listed below are representative of the knowledge, skill, and/or ability required.
Performing the essential functions of this job requires knowledge of:
- The practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various products and services.
Using American English, ability to read, analyze, and interpret general business periodicals, professional journals, technical procedures, or government regulations. Ability to write grammatically correct reports, business correspondence, and procedure manuals. Ability to effectively present information and respond to questions from groups of managers, clients, customers, and the general public.
Ability to work with mathematical concepts such as probability and statistical inference, and fundamentals of plane and solid geometry and trigonometry. Ability to apply concepts such as fractions, percentages, ratios, and proportions to practical situations.
Ability to define problems, collect data, establish facts, and draw valid conclusions. Ability to interpret an extensive variety of technical instructions in mathematical or diagram form and deal with several abstract and concrete variables.
This job requires the use of spreadsheets, the Internet, navigation of the Internet and files, word processing, and databases. To perform this job successfully, the candidate must have excellent skills using Google Email, Visual Studio, Mercurial, and MS SQL Server. The employee may have prior experience using Microsoft Word, Microsoft Excel, Google Docs, Google Sheets, Google Slides, and Test Rail. Without prior experience, the employee must have the ability to learn these programs.
To perform this job successfully, the employee must have expert skills and knowledge of PC Workstations and Microsoft Windows.
Programming Languages Knowledge/Abilities
Other Skills and Abilities:
- Gives full attention to what other people are saying, takes time to understand the points being made, asks questions as appropriate, does not interrupt at inappropriate times, and conveys awareness.
- Interacts in a positive way with persons of various social, cultural, economic, and educational backgrounds.
- Builds constructive working relationships with clients/customers, other work units, community organizations and others to meet mutual goals and objectives; behaves professionally and supportively when working with individuals from a variety of ethnic, social, and educational backgrounds.
- Writes computer programs for various purposes.
- Determines causes of operating errors and decides what to do about it.
To perform this job successfully, an employee should have work-related competencies.
- Works without supervision and demonstrates considerable initiative.
- Consistently maintains high levels of activity or productivity, sustains long working hours when necessary, works with vigor, effectiveness, and determination of a sustained period.
- Participates as an active and contributing member of a team to achieve team goals; works cooperatively with other team members, involves others, shares information as appropriate, and share credit for team accomplishments.
- Monitors and checks work to meet quality standards; demonstrates a high level of care and thoroughness; checks work to ensure completeness and accuracy.
- Sets high standards and well-defined, realistic goals for one’s self; displays a high level of effort and commitment towards completing assignments in a timely manner; works with minimal supervision; is motivated to achieve.
A Bachelor’s degree (B.A./B.S.) from an accredited four-year college or university in computer science, information systems, or related subject, and 1 to 3 years experience with general programming and web application programming, using the software development process. Experience should demonstrate a broad knowledge of and experience with computer systems and Microsoft technologies.
Specialized Education/Training and Experience
Certificates and Licenses
A Certified ScrumMaster (CSM) certification is desired.
No travel is required.
The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job.
While performing the duties of this job, the employee is required to sit, use hand or hands, reach with hands and arms, and to talk or hear over 5 hours per day. Specific vision abilities required by this job include close vision, distance vision, and color vision while viewing a computer screen for all aspects of software development; viewing color coded system alerts and GUIs.
The work environment characteristics described here are representative of those an employee encounters while performing the essential functions of this job.
The noise level in the work environment is usually moderate—business office with computers and printers, light traffic, etc.