Advanced knowledge of programming language(s), software development tools and environment(s) and systems analysis and functional design