A Senior Advisory Systems Engineer has the responsibilities to develop new applications and perform life cycle support for existing applications.
The engineer must possess excellent knowledge of the overall application environments, which includes multiple systems and the tools that support company’s products.
The engineer must also provide leadership in team meetings and lead application development teams from the concept stage through final implementation.
In addition, the engineer must be completely accountable for all tasks assigned to the engineer individually or to the team / project that the engineer is leading.
This individual must have extensive UNIX development and telecommunications application development experience so that their technical expertise can be leveraged in making sound architectural decisions that support company’s business drivers.
The incumbent must possess a high degree of experience and skill across several key disciplines, such as client / server applications, mainframe application systems, telecommunications and the cellular industry.
Finally, the engineer is required to adhere to all of company’s software development procedures and processes while fulfilling the leadership role.
Be a main focal point in the requirements phase for new / significant projects. Apply current telecommunications knowledge or other relevant technology knowledge and research current standards documents to keep up with the continuing changes in the industry.
Lead high-level design documentation efforts based on requirements documents. Ensure documentation contains critical information germane to online applications, utilizing Object Oriented or Structured Methods that contain such items as use cases, flow diagrams, structure definitions and architecture diagrams.
Lead detailed design documentation efforts based on high-level design documents utilizing Object Oriented or Structured Methods that contain items such as low-
leveling state machine diagrams, common procedural definitions, database design elements.
Lead the coding and testing efforts. Engineer will be responsible for coding tasks as well as monitoring and leading others through the effort.
Lead unit testing of applications using online applications tools such as a symbolic debugger, protocol analyzer and message emulation scopes and internally developed application test tools using company’s suite of development / test environments.
Ensure complete integration testing across interfacing systems / functional groups occur to ensure downstream processing meets requirements.
Specifically, insure that critical downstream applications such as billing, reporting and transaction data repository support the scenarios identified in the test plans.
Ensure thorough release notes are produced detailing the implementation process according to company procedures. Oversee the presentation of the implementation plan in formal release planning walk-throughs.
Ensure that the plan for post-implementation monitoring takes place to ensure the release is functioning as expected.
Lead project teams through the entire development process. Assist engineers assigned to the project by providing technical guidance through the development phases of the project.
Review design documents, code and test results to ensure accuracy and completeness and adherence to the requirements.
Become an SME in wireless and wireline telecommunications standards and network implementations. Leverage that industry knowledge in identifying solutions to company product and overall telecommunication industry problems.
Work with operations to identify, implement and refine proactive application and system monitoring techniques to enable company to provide the highest quality of service possible.
Learn company’s existing applications and be the expert; GO TO resource for all aspects of the internal / external assigned systems.
Capable of leading an application enhancement or project from requirements through implementation working with a group of engineers.
Work with the manager to assign the correct resources and knowledge base to complete tasks in a timely manner.
Work closely with manager to create project plans for large-scale efforts and host weekly meetings to track progress.
Work with Product Managers and Business Development personnel on new initiatives leveraging telecommunications expertise.
Capable of problem solving and keeping a group on task to complete enhancements or projects in a timely manner.
Capable to stand alone in meetings and represent group with internal / external customers to senior level positions.
Mentor peers on appropriate technical methodologies and implementations.
Incubate new ways to use our applications, technology methodologies and foster their adoption into the team
Support internal company procedures used to support existing / new applications
Create a Rough Order of Magnitude (ROM) of hours for projects.
Create a Level of Effort (LOE) of hours for projects.
Use Clarity to enter hours worked every week.
Use the test tool to emulate transaction entities.
Use our configuration management tool (Subversion)
Use our ticketing tool for recording, tracking, analyzing and resolving software defects.
Bachelor degree in Computer Science or related field or equivalent work experience
12+ years experience in a Unix product development environment
Strong telecommunications and wireless industry knowledge
Working knowledge of company products, systems and application
Strong knowledge of third party vendor tools (e.g. monitoring, scalability, performance tuning)
Strong working knowledge of software design processes and methods
Strong analytical and problem solving skills
Working knowledge of Microsoft Office applications
Experience using a source code management tool
System architecture experience
Statistical and benchmark testing experience
Proficient at Unix shell scripting (korn, bourne, bash, etc.)
Expert at one or more of the following programming languages : C, C++ or Java
Expert at developing SQL
Must have Oracle or Informix development expertise and design techniques
Object oriented development methodologies and design patterns
Experience with Integrated Development Environments (Eclipse, JDeveloper)
Required Interpersonal Skills
Ownership / Accountability for tasks / projects.
Excellent technical leadership abilities.
Work well within a team environment.
Excellent oral and written communication skills.
Independent work habits.
Proven ability to deliver quality software on time
Act with a sense of urgency
Positive attitude - optimism
Maintain composure in a stressful environment
Encourage and promote a healthy team environment
Support Project Management Process :
Project time reporting.
Estimate / Project risk analysis.
Identification of task and associated hours.
Progress tracking for projects / tasks