Software Engineer II

Apply Now

Company: Public Broadcasting Service

Location: Alexandria, VA 22304

Description:

Position Title:
Software Engineer II

Department:
Applications & Systems Integration

Corporate Area:
Technology & Operations

Status:
Regular, Full time Exempt

Manager Title:
Director, Applications & Systems Integration

Position Overview:

PBS is a membership organization that, in partnership with its member stations, serves the American public with programming and services of the highest quality, using media to educate, inspire, entertain, and express a diversity of perspectives. PBS empowers individuals to achieve their potential and strengthen the social, democratic, and cultural health of the U.S.
This is a Software Engineering position within the Applications & Systems Integration department. This group exists within the Software Development & Operations team, which is part of the larger Technology & Operations corporate area within PBS, led by the CTO. The Applications & Systems Integration group creates solutions that enable and leverage system, data and API access, in order to facilitate system integration, process automation and workflow orchestration within the media supply chain.
Engineer II, Software Integration (EII) contributes to the full systems life cycle. They collaborate with Analysts and Product Managers to understand the business requirements. They develop the physical design of technical solutions which includes analysis/design, building/coding, review, testing, configuration and deploying software and systems. The solutions frequently involve development and integration of multiple components spanning across on premises and SaaS offerings within the cloud. They are detailed oriented and comfortable working in an Agile Scrum environment. They work as an individual contributor, and may provide support and technical guidance, training and problem-solving assistance to peer and junior Engineers.

Principal Responsibilities:

1. Physical Design/Requirements
  • Collaborate with analysts and product managers to understand business and technology requirements.
  • Defines, designs, develops, and evaluates technical requirements and system technical specifications.
  • Reviews workflow processes/orchestrations to derive detailed technical requirements related to the solution.
  • Identifies requirement gaps, issues, or risks.
  • Explains/communicates to technical and non-technical staff how proposed solution meets the requirements.
  • Determines requirement impact on existing architectures, work processes and systems.

2. Develop, Implement, Test and Deploy
  • Contributes to and may lead the design, development/build, peer review, installation, configuration, testing and deployment of solutions including new development, enhancements, interfaces, functions and features.
  • Responsible for code documentation
  • Responsible for source code versioning
  • Breaks down complex tasks into subtasks, and provides cost/time estimates, tracks/monitors progress against estimates.
  • Contributes to the creation of work plan timelines and manages workflow to meet deadlines
  • Contributes to providing technical input/direction for short- and long-term planning efforts
  • Actively participates in and contributes to Agile Scrum ceremonies (daily standups, sprint demos, sprint retrospectives, sprint planning, etc.)

3. Continuous Improvement & Innovation
  • Tracks and understands emerging technologies and how they might apply within the organization.
  • Makes recommendations to improve security and participates in investigations as requested.
  • Studies systems and integrations to evaluate effectiveness and scalability; designs and implements solutions to help track/monitor key metrics.
  • Ensures solution performance meets the present and future needs of the business.
  • Recommend changes/enhancements for system/application improvements to support increased platform availability, reliability, transparency, and performance.
  • Troubleshoots, diagnoses and resolves escalated support problems; Creates, updates, and reviews documentation related to problem resolution.
  • Works with vendors to resolve problems; Evaluates services provided by vendors and recommends changes.

4. Standards, Policies and Procedures
  • Creates, updates and reviews documentation and ensures documentation is delivered to guidelines; supports knowledge transfer with peers and to support staff.
  • Follows and contributes to the definition of systems environment standards.
  • Follows internal procedures which include change management, incident management, and problem escalation.


Minimum Education/Training/Certification Required:
  • Bachelor's degree in computer science, Information Systems, Computer Engineering, System Analysis or a related field, or combination of education and work experience
  • Relevant software development/technology certification desirable


Minimum Experience Required:
  • Minimum of 5 years of experience in software development and operations, delivering flexible solutions in an agile manner
  • Strong knowledge and experience with object-oriented design and development with a (ex. Java, C#) with focus on enterprise Integration patterns, software design patterns
  • Strong knowledge and experience designing, developing, and consuming and integrating REST, SOAP Services and familiarity with SOA (Service Oriented Architecture) design principles.
  • Experience with designing, building and deploying products using cloud native services with AWS (Amazon Web Services) or Azure
  • Hand-on experience with relational (SQL Server, Postgres, etc.) and non-relational (MongoDB, DynamoDB, etc.) database development and analysis (e.g. create, query, etc.)
  • Experience with a messaging system, such as ActiveMQ, MSMQ, SQS
  • Experience with Container technologies such as docker
  • Experience with Unit Testing frameworks (e.g. Junit, Nunit, etc.) and automated integration testing frameworks
  • Experience developing with a Git version control system (ex. Github) and CI(Continuous Integration)/CD (Continuous Deployment) tools and procedures


Skills/Abilities Required:
  • Strong communication skills, including thoughtful listening skills, the ability to express complex ideas clearly and succinctly, and the ability to communicate well in writing.
  • Strong collaboration skills with ability to collaborate with all levels of staff and external stakeholders.
  • Strong organizational skills with the ability to balance overlapping deadlines.
  • Strong problem solving, analytical skills, and design skills.
  • Ability to work independently and proactively, exercising sound judgment.
  • Active learner: seeks out and continues learning about new and emerging tools, technologies, and methodologies and incorporates knowledge and other feedback into work.
  • Demonstrated knowledge of a broad range of hardware and software products
  • Ability to develop and deliver technical requirements, design, use cases and execute demonstrations and presentations.
  • Ability to deliver on commitments, delivering consistent results and finishing what is started.
  • Applies a variety of problem-solving techniques to diagnose and solve operational problems and identifies solutions to validate and resolve.


PBS is an Equal Opportunity Employer in accordance with the EEOC and the Commonwealth of Virginia.

Similar Jobs