Participates in the design, development, coding, testing, debugging, and maintenance of software code for business applications. Responsible for middle-tier implementation and integration with backend databases. Works with technical staff to understand problems with software and develops specifications to resolve them. Participates in the development of software user manuals.
- Experience and solid understanding of various software engineering practices.
- Experience translating software requirements and experience with software design solutions.
- Build test automation suites to ensure the quality of guest impacting products
- Designs, codes, unit test, debug, and document those programs.
- Customizes software based on research and customer needs.
- Prepare detailed specifications from which programs will be written, designed, coded, tested and debugged.
- May consult with users and develop business relationships and integrate activities with other IT departments to ensure successful implementation
- Monitor and report to management on the status of project efforts, anticipating/identifying issues that inhibit the attainment of project goals and implementing corrective actions.
- Required to perform duties outside of normal work hours based on business needs.
- Foster and maintain good relationships with customers and IT colleagues to meet expected customer service levels.
- Problem-solve and think laterally as part of a team, or individually, to meet the needs of the project.
Supervision Received or Extended
- Competent to work on most phases of applications programming activities.
- Works on problems of moderate scope where analysis of situations or data requires a review of a variety of factors.
- Exercises judgment within defined procedures and practices to determine appropriate action.
- Follows department processes and procedures and makes recommendations to these processes.
- Works under general supervision of more experienced team members and/or manager.
- Actively contributes to the results of a team and works towards achieving team goals and objectives.
- Uses expertise of more senior level team members and leverages additional resources to confirm solution or explore customized applications as a solution.
Knowledge and Skills/Technology Used
- Fluent in multiple application development languages at an expert level
- Experience with various computer platforms and application environments
- Expertise with developing multiple tiers of multi-tiered software applications
- Expertise in designing programs and applications
- Experience designing application systems
- Constantly updating personal technical and business knowledge and skills and mentoring others to increase the knowledge and skills of the team
- Strong organizational or Project Management skills
- Strong written and verbal communication skills
- Bachelor's Degree or equivalent combination of education and experience
Typical Range of Experience
- Typically 2-5 years of directly related experience
- Experience working with distributed team is preferred