Software Developer III
|Title:||Software Developer III|
Software Developer III
Who we are:
The American Physical Society (APS) is a nonprofit membership organization working to advance and diffuse the knowledge of physics through its outstanding research journals, scientific meetings, and education, outreach, advocacy, and international activities. APS represents over 55,000 members, including physicists in academia, national laboratories, and industry in the United States and throughout the world. Society offices are located in College Park, MD (Headquarters), Ridge, NY, and Washington, D.C.
Are you attracted to new technology and helping scientists succeed? Do you like having ownership over projects and are a natural problem solver? The American Physical Society Editorial Office is seeking an experienced Software Developer that is passionate about building innovative products. You will be essential in developing and maintaining software to support APS business functions. The Software Developer is expected to have a robust depth of knowledge and is capable of assuming the primary development role on projects.
- Exercises primary responsibility for the implementation of all aspects of several applications and/or systems. Leads the gathering of user and business requirements. Translates requirements into appropriate components under the oversight of their group’s technical leads. Suggests the prioritization of the group’s work. Communicates technical implications of business requirements with manager and technical lead. Participates in estimating schedules for completion and negotiating alternate technical and business solutions.
- Independently identifies reusable components and develops appropriate libraries, services, and development tools. Regularly contributes components and improvements to core libraries for use by other members of the team. Participates in the development and testing of new tools.
- Develops architecture for an application in partnership with other group members and the technical lead. Discusses appropriate tools at all layers and selects appropriate development methodology and programming techniques. Demonstrates an advanced and deep level of mastery of a diverse set of software development techniques and methodologies. Specifies component and service interfaces under the oversight of the technical lead. Helps modify standard tools, build systems, and development practices to improve the group’s standard practices.
Scope & Relationships:
- Works with operations team to specify system level requirements (libraries, applications, OS dependencies). Develops, implements, and documents application deployment procedures using automated deployment tools where possible (and appropriate). Provides troubleshooting and performance tuning of applications in the deployment environment. Work with operations team to develop and implement changes to network, system, and library components to improve application performance and reliability.
- Participates in technical meetings and code reviews, providing feedback to others when needed. Presents techniques, tools, or other topics to the group as required. Helps mentor other developers.
- Contributes bug fixes or modest enhancements back to open source projects when applicable.
Be a part of a team with manager, other developers and software architect in designing and adhering to a set of development practices.
Work with quality assurance and support staff in testing and providing adequate documentation.
Work with editorial staff on understanding business practices and developing requirements.
Work through support staff in monitoring and responding to external user problems.
Work with external users to understand and develop requirements.
Work directly with external vendors on API’s and communications where applicable.
Communicate with user groups and developers of open-source and other third-party tools as needed.
Bachelors degree or equivalent experience. Experience: 5 or more years practical software development experience.
Knowledge, Skills and Abilities:
▪ Experience with an object-oriented programming language is essential; proficiency in Ruby, Java, and/or Clojure as well as modern frontend development techniques preferred.
▪ Web services experience and understanding of basic web protocols and standards is important.
▪ Familiarity with Unix, Linux or Mac software development environments and command-line and scripting tools is expected.
▪ Strong organization, documentation, and prioritization skills.
▪ Strong written and verbal communication skills.
▪ Excellent attention to detail.
▪ Ability to adapt to quickly changing schedules.
▪ Ability to work well with interdepartmental teams as well as independently.
To advance and diffuse the knowledge of physics for the benefit of humanity, promote physics, and serve the broader physics community, we:
- Provide a welcoming and supportive professional home for an active, engaged, and diverse membership
- Advance scientific discovery and research dissemination
- Advocate for physics and physicists, and amplify the voice for science
- Share the excitement of physics and communicate the essential role physics plays in the modern world
- Promote effective physics education for all
The Core Values That Drive Our Mission Are:
- The Scientific Method
- Truth and Integrity
- Diversity, Inclusion, and Respect
- Partnering, Cooperation, and Open Collaboration
- Speaking Out
- Education and Learning
The American Physical Society is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, ethnic or national origin, ancestry, pregnancy (including childbirth or related condition), citizenship, familial status, mental or physical disability, veteran status, genetic information, other non-disqualifying disability, or any other characteristic protected by law.
We welcome you to apply today!