The Senior Java Developer assists in the design of technical solutions and performs complex programming or troubleshooting activities
Designs, writes code, and performs testing on a diverse range of complex software programs proficiently with a high level of quality.
Applies a structured approach and coordinates collaboratively with stakeholders to isolate and resolve complex application-level problem or straightforward system-level problems. Complies with established development guidelines and standards.
Conducts detailed analysis of defined systems specifications and develops and documents designs that meet applicable standards and identifies, analyzes and resolves moderately complex software inadequacies.
Assists in the analysis of more highly complex systems specifications and in developing and documenting designs that meet established standards. Participates in product design meetings.
Reviews and may help write functional and non-functional requirements.
Provides detailed estimates for small tasks (up to one month). Assists in establishing project schedules for projects. Plans tasks up to a month in duration. Sets own priorities and tackles assignments accordingly.
Takes complete ownership of own tasks. Overcomes obstacles to complete larger projects on schedule. Provides input for Technical Writing department to produce documentation for product.
Troubleshoots, monitors, and prepares simulation and evaluation plans to ensure that designs meet specification.
Participates in code and design reviews.
Maintains current knowledge of products, application functionality and the high level architecture of hosting environment
Learns new technologies quickly, on the go.
Mentors junior members of staff. Performs other duties as required to deliver exceptional service and to support business goals.
A post-secondary degree in computer science or software engineering (or equivalent) and a minimum of 3 years of relevant experience in software engineering.
Experience must include the analysis and development of one or more moderately complex applications using an object oriented methodology, at least one of which must have been developed in Java. Thorough knowledge and understanding of methods, standards and best practices with respect to software development. Strong analytical, problem solving, organizational and time management skills. Experience working with or a desire to work in an Agile development environment.Ability to communicate effectively both orally and in writing with technical teams and other co-workers, plan tasks, work to schedules, and adapt easily to changing priorities and business needs. Ability to work with minimal supervision on multiple projects in a team environment and deliver on commitments. Be innovative and eager to learn from mistakes.