Engineering - Software

Software Engineer

Download Job Description

  • Write clean, maintainable code in a collaborative environment.
  • Communicate progress throughout the development process.
  • Maintain security best practices, both personally, and in the development of applications.
  • Work with the rest of the Engineering team on incoming proposals to create viable project estimates.
  • Break down requirements, wireframes, user stories, and designs into discrete pieces of work to be executed by the Engineering team.
  • Participate in scoping, planning, and process related meetings and conversations regularly.
  • Refactor code as part of regular maintenance.
  • Write testable code and documentation as part of the development process
  • Troubleshoot bugs and apply fixes in a timely manner.
  • Research technologies and best practices in order to make technical and architectural decisions.
  • Work with the Lead Software Engineer to ensure timelines are clear, and notify the team in the event of delays.


Program Officer

Download Job Description

  • Coordinate the cross-functional team throughout all project management phases of a particular project.
  • Ensure that all team members have the required information and resources to carry out their tasks effectively.
  • Monitor the team’s work time and timesheets.
  • Manage large and diverse teams and projects (sometimes simultaneously).
  • Lead daily/weekly stand-ups and meetings.
  • Meet with individual team members to find and fix any project-specific issues, training and workshop facilitation.
  • Foster a work culture based on accountability.

Customer-Oriented Skills

  • Manage communication with external and internal stakeholders (customers, sponsors, executives, etc.).
  • Engage and guide stakeholders.
  • Organize and participate in customer meetings.
  • Ensure customer satisfaction.
  • Facilitate communications between all company units to ensure customer needs are met.

General Business Skills

  • Help maintain business relationships.
  • Contribute to the development of the company, its processes, and its projects.
  • Recommend further improvements to company and program-specific processes.
  • Align the company’s general business targets with the project’s objectives and outcomes.
  • Create a detailed project management plan and other project documents.
  • Guide incoming and outgoing project files.
  • Provide solutions to project-related issues.
  • Maintain the project’s strategic direction.
  • Help define the project’s scope.
  • Set milestones and deadlines.
  • Assist in the creation of budget and revenue estimates.
  • Work directly with engineering team to set deadlines and priorities and ensure the timely delivery of products, new features, and releases.
  • Facilitate the engineering process to translate project scope into executable tasks.
  • Manage project resources and their costs, and manage project schedules between teams.
  • Assign, prioritize, and supervise project tasks.
  • Ensure the execution and review of project activities within deadline.
  • Implement and manage changes to timeline, scope, and implementation plans.
  • Detect, report, and fix issues whenever necessary.
  • Identify, prevent (where possible), and manage risks.
  • Track project performance using appropriate KPIs, metrics, tools, and techniques.
  • Submit deliverables and ensure they adhere to quality standards.
  • Perform any other relevant, project-related duties when needed.