Full-Stack Software Developer, Stanford Law School
Stanford University
About this position
Position Description
Stanford Law School is seeking to hire a Full-Stack Software Developer to join the school's IT Department. Reporting to the CIO of the Law School, the Full-Stack Software Developer is responsible for supporting the Law School's academic research platforms and infrastructure projects, with a particular focus on analyzing, designing, maintaining, modernizing, and enhancing existing Drupal- and MySQL-based research applications in support of faculty-led academic projects. Multiple key initiatives touch all of our communities, including faculty, students, staff, alumni and the public. As a Full-Stack Software Developer, you will be expected to execute all programming tasks, including analyzing, designing, developing, implementing, modifying, and maintaining computer programs. The Developer will be expected to work on systems of moderate size and complexity or segments of larger systems — including taking ownership of existing production applications originally built by prior in-house developers and outside contractors — as well as be expected to provide innovative programming and analysis skills. The successful Full-Stack Software Developer will be a self-motivated rapid learner, a seasoned thought partner and an exceptional communicator with the ability to translate between business and technical partners. CORE DUTIES* Maintain, extend, and modernize existing Law School research and academic web applications, including Drupal-based sites and custom MySQL-backed databases supporting long-running faculty research projects. Conceptualize design, implement, and manage research and infrastructure focused software, including web-based applications, databases, and interfaces from initial design and architecture through development, test, and deployment. Implement and maintain content management systems and client-side web interface components for a wide variety of infrastructure and research projects that interact with relational database management systems, which in turn integrate with Stanford's web, authentication, and authorization systems. Assume responsibility for inherited codebases: read, document, refactor, and responsibly evolve applications that were developed over multiple years by prior team members and vendors. Ability to work closely with faculty, students and other researchers to provide technical guidance in developing and implementing innovative software from concept to delivery in support of the Law School's mission. Work with a variety of users to gain information, and develop intra-system tradeoffs between different users, as necessary; interact with a diverse client base and outside vendor contacts. Work as a project leader, as needed, for projects of moderate complexity. Evaluate and implement new features, programming languages and technologies, and integrate them into the computing environment. Provide life-cycle management for software and code. Document system builds and application configurations; maintain and update documentation as needed. Provide technical analysis, design, development, conversion, and implementation work. Serve as a technical resource for applications. Compare, evaluate, and implement new features and technologies, and integrate them into the computing environment. Follow team software development methodology. * Other duties may also be assigned MINIMUM REQUIREMENTS Education & Experience: Bachelor's degree and five years of relevant experience, or a combination of education and relevant experience. Knowledge, Skills and Abilities: Significant experience in developing software, including web applications, using open source tools, languages, libraries, and current standards-compliant code. Ability to write, compile, test, debug, and deploy software on UNIX-like (primarily Linux) platforms. Strong communication skills with both technical and non-technical clients. Ability to define and solve logical problems for highly technical applications. Ability to select, adapt, and effectively use a variety of programming methods. Knowledge of application domain. Preferred Knowledge, Skills, and Abilities: Demonstrated experience with Drupal (site building, custom module development, and upgrade/migration work) and with MySQL / MariaDB for production web applications. Experience taking ownership of existing/inherited codebases — reading unfamiliar code, reconstructing intent, writing documentation, and safely refactoring over time. Understanding of version control, release management, and software deployment best practices. Ability to design and manage relational databases. Ability to design and implement web services. PHYSICAL REQUIREMENTS* Constantly perform desk-based computer tasks. Frequently sit, grasp lightly/fine manipulation. Occasionally stand/walk, write by hand. Occasionally use a telephone, lift/carry/push/pull objects that weigh up to 10 pounds. * Consistent with its obligations under the law, the University will provide reasonable accommodation to any employee with a disability who requires accommodation to perform the essential functions of his or her job. WORKING CONDITIONS May work extended hours, evening and weekends. WORK STANDARDS Interpersonal Skills: Demonstrates the ability to work well with Stanford colleagues and clients and with external organizations. Promote Culture of Safety: Demonstrates commitment to personal responsibility and value for safety; communicates safety concerns; uses and promotes safe behaviors based on training and lessons learned. Subject to and expected to comply with all applicable University policies and procedures, including but not limited to the personnel policies and other policies found in the University's Administrative Guide, http://adminguide.stanford.edu. The expected pay range for this position is $138,402 to $163,985 per annum. Stanford University provides pay ranges representing its good faith estimate of the salary the university reasonably expects to pay for a position upon hire. The pay offered to a selected candidate will be determined based on factors such as (but not limited to) the scope and responsibilities of the position, the qualifications of the selected candidate, departmental budget availability, internal equity, geographic location and external market pay for comparable jobs. At Stanford University, base pay represents only one aspect of the comprehensive rewards package. The Cardinal at Work website (https://cardinalatwork.stanford.edu/benefits-rewards) provides detailed information on Stanford’s extensive range of benefits and rewards offered to employees. Specifics about the rewards package for this position may be discussed during the hiring process. The job duties listed are typical examples of work performed by positions in this job classification and are not designed to contain or be interpreted as a comprehensive inventory of all duties, tasks, and responsibilities. Specific duties and responsibilities may vary depending on department or program needs without changing the general nature and scope of the job or level of responsibility. Employees may also perform other duties as assigned. Stanford University is an equal employment opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law. This position description does not constitute an employment agreement and is subject to change as the needs of the institution evolve. Additional Information Schedule: Full-time Job Code: 4822 Employee Status: Regular Grade: J Department URL: http://www.law.stanford.edu/ Requisition ID: 109001 Work Arrangement : On Site
Qualifications
MINIMUM REQUIREMENTS Education & Experience: Bachelor's degree and five years of relevant experience, or a combination of education and relevant experience. Knowledge, Skills and Abilities: Significant experience in developing software, including web applications, using open source tools, languages, libraries, and current standards-compliant code. Ability to write, compile, test, debug, and deploy software on UNIX-like (primarily Linux) platforms. Strong communication skills with both technical and non-technical clients. Ability to define and solve logical problems for highly technical applications. Ability to select, adapt, and effectively use a variety of programming methods. Knowledge of application domain. Preferred Knowledge, Skills, and Abilities: Demonstrated experience with Drupal (site building, custom module development, and upgrade/migration work) and with MySQL / MariaDB for production web applications. Experience taking ownership of existing/inherited codebases — reading unfamiliar code, reconstructing intent, writing documentation, and safely refactoring over time. Understanding of version control, release management, and software deployment best practices. Ability to design and manage relational databases. Ability to design and implement web services. PHYSICAL REQUIREMENTS* Constantly perform desk-based computer tasks. Frequently sit, grasp lightly/fine manipulation. Occasionally stand/walk, write by hand. Occasionally use a telephone, lift/carry/push/pull objects that weigh up to 10 pounds. * Consistent with its obligations under the law, the University will provide reasonable accommodation to any employee with a disability who requires accommodation to perform the essential functions of his or her job. WORKING CONDITIONS May work extended hours, evening and weekends. WORK STANDARDS Interpersonal Skills: Demonstrates the ability to work well with Stanford colleagues and clients and with external organizations. Promote Culture of Safety: Demonstrates commitment to personal responsibility and value for safety; communicates safety concerns; uses and promotes safe behaviors based on training and lessons learned. Subject to and expected to comply with all applicable University policies and procedures, including but not limited to the personnel policies and other policies found in the University's Administrative Guide, http://adminguide.stanford.edu. The expected pay range for this position is $138,402 to $163,985 per annum. Stanford University provides pay ranges representing its good faith estimate of the salary the university reasonably expects to pay for a position upon hire. The pay offered to a selected candidate will be determined based on factors such as (but not limited to) the scope and responsibilities of the position, the qualifications of the selected candidate, departmental budget availability, internal equity, geographic location and external market pay for comparable jobs. At Stanford University, base pay represents only one aspect of the comprehensive rewards package. The Cardinal at Work website (https://cardinalatwork.stanford.edu/benefits-rewards) provides detailed information on Stanford’s extensive range of benefits and rewards offered to employees. Specifics about the rewards package for this position may be discussed during the hiring process. The job duties listed are typical examples of work performed by positions in this job classification and are not designed to contain or be interpreted as a comprehensive inventory of all duties, tasks, and responsibilities. Specific duties and responsibilities may vary depending on department or program needs without changing the general nature and scope of the job or level of responsibility. Employees may also perform other duties as assigned. Stanford University is an equal employment opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law. This position description does not constitute an employment agreement and is subject to change as the needs of the institution evolve.