Responsibilities
Participate in analyzing, designing, writing and testing code, documenting and implementing functionally appropriate, technically sound, and well-integrated application systems. This is completed in accordance with customer requirements and organizational methodologies and standards for new application development as well as existing system enhancements.
Participate in new application development and existing system enhancements by coding system features according to system designs.
Maintain existing application programs by fixing bugs or clearing up operational deficiencies in both previously released software and software slated for future release.
Assure program, module and system integrity through thorough testing and adherence to company standards and procedures.
Work through all phases of the software development life cycle, including research, design, analysis, requirements, implementation, test automation, and maintenance.
Utilize new technologies and tools to modify products and provide integration with applications developed internally and externally.
Prepare and modify program and system documentation.
Provide guidance to less experienced team members to ensure knowledge transfer and training are successfully meeting department goals.
Achieve departmental goals and timelines.
Perform other duties as assigned.
Complexity:
Demonstrate the ability to take increasingly difficult assignments and successfully implement it with little or no help from more senior resources.
Demonstrate a high degree of skill, efficiency and be a leader to the less experienced development staff.
Develop programs that are moderate to complex in nature, adhering to established departmental standards.
Learn and implement new technologies and architectures within a reasonably quick timeframe while producing and testing high-quality software.
Demonstrate strong knowledge of software development practices, concepts, and technologies obtained through formal training and work experience.
Demonstrate strong knowledge of required programming languages.
Demonstrate strong knowledge of the technical/business environment.
Effectively partner, communicate and negotiate with business analyst, development and support groups in order to gather and communicate business requirements.
Work on individual programs that are part of a much larger application.
Adapt to changing products and technologies.
Fix bugs in existing, often unfamiliar programs, under considerable time constraints.
Manage and prioritize often conflicting tasks and interruptions so as to minimize their impact on the current deadlines and workload.
Qualifications
Bachelor's degree in computer science, computer engineering, or comparable work experience.
Typically 2 or more years of software development experience with database technology.
Demonstrated strong knowledge of software development practices, computer science theory, and understanding of relevant technologies.Relevant Technologies:
.Net / C# (or similar high level language)
SQL Server 2000/2005
XML/XSD/XSLT
Visual Basic 6
or relevant related technologies
Experience writing and testing code to meet strict deadlines.
Demonstrated understanding of product architecture and all underlying technologies.
Demonstrated understanding of development process.
Demonstrated experience with data modeling tools, web services and/or service oriented architecture.
Ability to work well both independently and within a team environment.
Strong written and verbal communication skills.
Strong interpersonal skills.
Experience providing guidance and direction to less experienced staff.
Solid negotiation with various parties to ensure enhancements to applications are addressed while maintaining/balancing business situations and constrictions.
Well-developed logical thinking and reasoning skills.
Ability to prioritize and complete multiple tasks in a fast-paced, technical environment.
Keen attention to detail.
#LI-SB1
#LI-Hybrid