Dartmouth College-posted about 2 months ago
Full-time • Mid Level
Hybrid • Hanover, NH
5,001-10,000 employees
Educational Services

The Software Engineer for Advancement is a full-stack developer who designs, develops, tests, and maintains software applications that advance the mission of Dartmouth's Advancement division. This role requires a strong combination of technical expertise across multiple platforms and programming languages, alongside a deep understanding of our business objectives. The successful candidate will apply both business acumen and technical skills to deliver high-quality, maintainable solutions within an agile team environment This role independently executes moderate to complex technical work and actively contributes to team-based architecture and implementation efforts. The Software Engineer collaborates with teammates, clients, vendors, and campus partners to develop custom applications, enhance vendor systems, and support integrations that connect Advancement systems to broader institutional platforms. This includes involvement in system design, database development, API creation and consumption, testing, and support for both on-premise and cloud-based solutions. The role also supports deployment automation, infrastructure maintenance, and DevOps practices in partnership with more senior team members. Strong analytical, problem-solving, and communication skills are essential for working effectively within a cross-functional team. The Software Engineer contributes to team growth through knowledge sharing, code review participation, and process improvement efforts. Are you a full-stack developer passionate about purpose-driven technology? Dartmouth's Advancement Systems and Services team is looking for two Software Engineers to help design and build innovative solutions that support our institutional mission. We are looking to hire two talented individuals into this role. Make an impact. Grow your skills. Join a team that values innovation, collaboration, and team engagement.

  • Designs, develops, tests, and maintains custom software solutions that meet user needs and align with institutional standards.
  • Translates technical requirements into functional software components.
  • Participates in solution design and architecture discussions, contributing to decisions on system structure, integration approaches, and performance optimization.
  • Develops and consumes APIs and web services for system interoperability.
  • Maintains and enhances database-driven applications using tools such as Oracle PL/SQL and APEX.
  • Implements unit testing, automated testing frameworks, and follows version control and release management best practices.
  • Participates in infrastructure and application support for both on-premises and cloud environments.
  • Collaborates on deployments and contributes to automation and DevOps workflows.
  • Collaborates on teams and leads team initiatives.
  • Develops and enhances documentation supporting systems, integrations, and processes, contributing to a shared knowledge base that informs the work of Advancement Systems and Services.
  • Works closely with team members to complete tasks aligned to team goals and delivery timelines.
  • Partners with stakeholders to understand business needs, clarify requirements, and deliver value through technical solutions.
  • Supports vendor system implementations and integrations; engages with vendors on issue resolution.
  • Maintains strong working relationships with functional teams, end users, and other IT professionals across the institution.
  • Participates in agile ceremonies, sprint planning, retrospectives, and team-based prioritization.
  • Shares technical knowledge through documentation, code reviews, cross training, and informal mentoring of colleagues.
  • Engages in continuous professional development to stay current with tools, languages, frameworks, and higher education technology practices.
  • Contributes to team culture through collaboration, knowledge sharing, and continuous improvement efforts.
  • Demonstrates a commitment to diversity, inclusion, and cultural awareness through actions, interactions, and communications with others.
  • Performs other duties as assigned.
  • Bachelor's degree in Computer Science or a related field
  • 5-8 years of professional software engineering experience
  • Demonstrated experience in:
  • Full-stack application development
  • Oracle PL/SQL, SQL, APEX, with proven ability to develop and manage complex queries and manage data migrations, administer, navigate and manage multiple schemas, data replication, backup/recovery, troubleshooting, development, and performance tuning in complex, consolidated Oracle environment
  • One or more programming languages (e.g., Python, JavaScript, Java, C#)
  • Front-end development (HTML, CSS, JavaScript)
  • RESTful APIs and system integration
  • Version control (Git, SVN), release pipelines, and collaborative development workflows
  • Working with and troubleshooting internet communication components, such as DNS, DNAME, SMTP with a solid understanding of security certificates (SSL/TLS) and other authentication methods and encryption that ensure compliance with privacy regulations
  • Familiarity with DevOps principles and CI/CD tools
  • Strong problem-solving, communication, and teamwork skills
  • Ability to work independently on technical tasks and contribute to team solutions
  • Experience with vendor system integration and support of ERP platforms (e.g., Advancement, SIS, Finance, HR)
  • Familiarity with data governance, privacy, and compliance standards (e.g., FERPA, HIPAA, GDPR)
  • Knowledge of cloud platforms (AWS, Azure, or GCP), containerization (Docker, Kubernetes)
  • Exposure to Agile development methodologies and tools
  • Understanding of institutional workflows in higher education
  • Strong knowledge and practical experience in database administration tasks
  • Proficiency in application upgrade, cloning, and installation procedures
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service