Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, maintenance, and operation of software. PowerSchool Software Engineers apply these principles to the design, development, maintenance, testing, and evaluation of our software systems as well as the tools and processes the organization needs to build, maintain, and operate our software systems over time.
Essential duties and responsibilities include the following. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
– Investigate and resolve issues reported for a large web application following best practices such as authoring or updating unit tests, writing maintainable code, applying established patterns and algorithms.
– Analyze performance and develop improvements to performance of web application.
– Assist with security updates to web application.
– Perform upgrades to 3rd party libraries and tools used by the web application
– Assist in implementing new web application software features and products following best practices such as authoring of unit tests, writing maintainable code, applying established patterns and algorithms
– Specialize in client or server side web application development as a member of a project team. Preference for familiarity with the full technical stack.
– Assist in developing software to support internal initiatives, tools, update framework and application functionality
– Work as part of an Agile SCRUM team in the planning, scoping, estimation and execution of technical solutions
– Work within a wide range of new and legacy code and technologies in a mature codebase
– Other duties as assigned
– This is an entry level position; the ideal person needs to be motivated and willing to learn
– Working toward bachelor’s degree (computer science or information technologies preferred) or recent graduate
– Some knowledge of Java, Spring (IoC), Hibernate, JPA, JAX-RS and/ or .net
– Basic understanding of SQL, Oracle experience a plus
– Strong written and verbal communication skills
– Ability to work with current software design principles and concepts such as patterns, algorithms, data structures, dependency injection, MV**, SOA, n-tier architecture
– Ability to handle a heavy workload with multiple projects and frequent interruptions
– Ability to work in a changing, dynamic environment
– Occasionally carrying items weighing under 10 lbs.
– Rarely carrying items weighing between 11-20 lbs.
– Occasionally reaching over shoulder
– Overhead and reaching outward
– Occasionally bending
– Frequently walking normal surfaces
– Constant sitting
– Constant use of keyboard, fine dexterity, grasping, holding
– Constant repetitive motion – hands