PowerSchool is seeking a Senior Software Engineer for its PowerSchool SIS team. This position, under the general direction of the Lead and/or Manager, Software Engineering, will be responsible for technical and development support for our award-winning K-12 software. This role will implement, code, build, and test new features, maintain existing features, and develop reports that will include components, data models, customization and reporting features for our products. Additionally, this position will gather and refine requirements, develop designs, implement, test and document solutions to produce the highest quality product and customer satisfaction.
Duties and Responsibilities
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
Implement 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.
Develop 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
Skills/Requirements
Qualifications
To be considered for and to perform this job successfully, an individual must be able to perform each essential duty and responsibility satisfactorily. The requirements listed below are representative of the knowledge, skill and/or ability required.
Qualifications include:
6+ years’ experience in software engineer role
Bachelor’s degree in Computer Science or Information Technologies required or equivalent experience
Advanced knowledge of current web client technologies including ability to demonstrate proficiency with HTML, CSS, JavaScript, jQuery, Struts2, Angular JS
Advanced knowledge of Java, Spring (IoC), REST API, Hibernate, JPA, JAX-RS
Proficient in Oracle Databases, SQL Server experience a plus
Familiar with OWASP threats and mitigation techniques
Experience with automated testing, High personal code/development standards (peer testing, unit testing, documentation, etc)
Strong written and verbal communication skills
Strong ability to work with current software design principles and concepts such as patterns, algorithms, data structures, dependency injection, Microservices, MV**, SOA, n-tier architecture
Strong ability to handle a heavy workload with multiple projects and frequent interruptions
Strong ability to work in a changing, dynamic environment