C++ Software Engineer IV in Plano, TX at Vaco

Date Posted: 1/4/2022

Job Snapshot

Job Description

C++ Software Engineer IV

Initial 6-month contract w/ extensions

Fully remote for client based in Plano, TX


Develops core versions of software applications for sale to external clients. Identifies clients' purchasing requirements and technical specifications through Product Management and/or client representatives. Interacts with engineering groups to assist in the design changes to equipment and/or software. Trains and communicates with clients on systems application.


  • Analyzes, designs, programs, debugs, and modifies software enhancements and/or new products used in local, networked, or Internet-related computer programs. Code must be used in the core version of applications available for sale commercially and not that which is customized to meet a specific client's implementation of the application.
  • Interacts with product managers and/or users to define system requirements and/or necessary modifications.
  • Participates in software design meetings and analyzes user needs to determine technical requirements.
  • Writes technical specifications based on conceptual design and stated business requirements.
  • Writes code, completes programming, and performs testing and debugging of applications using current programming languages and technologies.
  • Completes documentation and procedures for installation and maintenance.
  • Trains and communicates with internal Client Training, Client Relationship, and Sales teams on systems application.
  • May be responsible to develop or execute project plans, budgets, and schedules and for documenting work and results.
  • May deliver informational and decision-seeking presentations to technical and business groups to internal and/or external audiences.
  • Performs additional related duties as assigned.


A Bachelor's degree in Computer Engineering, Computer Science or other related discipline; or equivalent combination of education and experience that is required for the specific job level.


  • Must have in-depth knowledge and expert level experience with MS Visual C++ and C#
  • Must have knowledge of Object Oriented Architecture & Design
  • Hands-on experience with SQL Server, MFC
  • Knowledge of .NET code development is also required
  • Knowledge of financial services industry
  • Knowledge of end-to-end systems development life cycles (e.g., waterfall, iterative and other modern approaches to software development)
  • Knowledge of standards relevant to the software industry (e.g., ISO, CMM, Six Sigma)
  • Knowledge of banking practices, regulations, and operations within assigned line(s) of business
  • In-depth understanding of design patterns and their application
  • Fluency in developing and understanding sequence diagrams, class models, etc.
  • Proficiency in solutions design and requirements definition disciplines leveraging model driven design-based tools and techniques including conceptual solution component models, business process models, use cases, etc.
  • Outstanding verbal and written communication skills to technical and non-technical audiences of various levels in the organization (e.g., executive, management, individual contributors)
  • Excellent analytical, decision-making, problem-solving, team, and time management skills
  • Ability to persuade and influence others on the best approach to take
  • Ability to estimate work effort for project sub-plans or small projects and ensure the project is successfully completed
  • Positive outlook, strong work ethic, and responsive to internal and external clients and contacts
  • Willingly and successfully fulfills the role of teacher, mentor, and coach
  • May require in-depth knowledge of networking, computing platform, storage, database, security, middleware, network and systems management, and related infrastructure technologies and practices

Software Engineer IV

  • Expert/lead role.
  • Has team leadership duties, including instructing, assigning, and checking the work of other Software Engineers.
  • Assists in planning, organizing, and controlling the activities of the team.
  • Coordinates the activities of the team with other IT teams and the product management team.
  • Specialized depth and/or breadth of skills, experience, and proficiency.
  • Acts as expert technical resource to software engineering staff in the development, testing, and implementation processes.
  • Frequently acts as a Project Leader.
  • Receives general direction from management.
  • Assists in all levels of supervision and may perform management functions in the absence of the Manager or may act as Project Manager for major projects.
  • Does not have hire, fire, and performance coaching /development authority.
  • Typically requires ten (10) or more years of software engineering experience or an equivalent combination of education and experience.
  • Progression to this level is typically restricted based on business requirements.


What is the typical day like for this role? What are the day-to-day responsibilities?

  • Manager is based in Oakland, CA
  • Working on a legacy application that is 20+ years
  • The team is in a profound transitional phase
  • We are moving to azure, so this will now be a cloud-based application
  • We are an agile shop & do daily standups, & organized into sprints
  • This role sits within our Secondary Markets Division
  • The application is called Compass Pointe
  • This is a Senior C++ .NET Software Engineer

What is the size of the team?

  • Very small team; two developers onshore (based on east coast)
  • 1 developer offshore in India

What are the top skill-sets needed for this position?

  • Needs expert level C++ experience & knowledge
  • Strong background in design & design patterns
  • C#.NET

What are the nice-to-have skills you would like this person to possess?

  • WPF is preferred, not required
  • ASP.NET, Web APIs, and .NET core are not critical for this role, and therefore preferred skillsets
  • Azure DevOps is a big plus
  • MFC is a heavy plus, borderline required

Manager's interview process (phone interview, onsite interview, etc.):

TEAMS interview with manager and two senior developers on team