ESSENTIAL DUTIES AND RESPONSIBILITIES include the following:
- Develops software solutions by studying information needs; conferring with users; studying systems flow, data usage, and work processes; investigating problem areas; following the agile software development lifecycle.
- Develop features across multiple subsystems within our applications, including collaboration in requirements definition, prototyping, design, coding, testing and deployment.
- Understand how our applications operate, are structured, and how customers use them.
- Provide engineering support when building, deploying, configuring and supporting systems for customers.
- Participate with the engineering and operations teams to define plans for standardizing, scaling and enhancing our products and the services utilized to deploy/install/release those products.
- Investigate, analyze and make recommendations to management regarding technology improvements, upgrades and modifications.
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- 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; recommending changes in policies and procedures.
- Provides information by collecting, analyzing, and summarizing development and service issues.
- Accomplishes engineering and organization mission by completing related results as needed.
- Supports and develops software engineers by providing advice, coaching and educational opportunities.
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
KNOWLEDGE, SKILLS & ABILITIES:
Proficiency developing and troubleshooting complex software systems that run in mixed-environments including Linux, Unix and/or Windows on desktop, server, tablet, and mobile systems.
Previous experience configuring and using any or all of the following highly desirable: HTML5, PHP, AJAX, SOAP, Ant, Git, TCP/IP networking, Push, LAMP stacks.
EDUCATION and/or EXPERIENCE:
- 5+ years of experience as a software engineer; demonstrated success developing a variety of software systems while taking on increasing responsibility for analysis, design, implementation and deployment tasks
- 3+ years of experience developing data-driven applications utilizing significant relational database engines as part of the overall application architecture. Experience with MySQL is highly desirable.
- 3+ years of experience building web-based software systems, utilizing N-tier architectures, dynamic content, highly-scalable approaches, and complex security models/implementations
- Degree in Management Information Systems or Computer Science preferred but if appropriate experience is demonstrated then degrees may not be required.