Job Responsibilities:
-
Develops information systems by designing, developing, and installing software solutions.
-
Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
-
Develops software solutions by studying information needs, conferring with users, and studying systems flow, data usage, and work processes.
-
Investigates problem areas.
-
Follows the software development lifecycle.
-
Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
-
Prepares and installs solutions by determining and designing system specifications, standards, and programming.
-
Improves operations by conducting systems analysis and recommending changes in policies and procedures.
-
Obtains and licenses software by obtaining required information from vendors, recommending purchases, and testing and approving products.
-
Protects operations by keeping information confidential.
-
Provides information by collecting, analyzing, and summarizing development and service issues.
-
Accomplishes engineering and organization mission by completing related results as needed.
Skills:
-
Analyzing information
-
General programming skills
-
Software design
-
Software debugging
-
Software documentation
-
Software testing
-
Problem solving
-
Teamwork
-
Software development fundamentals
-
Software development process
-
Software requirements
Education, Experience, and Licensing Requirements:
-
Bachelor’s and/or Master’s degree in Computer Science, Computer Engineering or related technical discipline
-
5+ years of professional software development experience
-
Proficiency in Java or C++, and object-oriented design skills
-
Application architecture and design patterns
-
Experience serving as technical lead throughout the full software development lifecycle, from conception, architecture definition, detailed design, scoping, planning, implementation, testing to documentation, delivery and maintenance is preferred
-
Knowledge of professional software engineering and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
-
Experience in development of distributed/scalable systems and high-volume transaction applications