Design, develop and execute software solutions to address business issues. Works to establish functional requirements and reviews solutions to ensure organizational needs are met.
Selects and oversees implementation of one or more software development methodologies.
Develops short- and long-term product roadmaps to ensure continuous improvement of software.
Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
Prepare and install solutions by determining and designing system specifications, standards and programming
Improve operations by conducting system analysis, recommending changes in policies and procedures
Protect operations by keeping information confidential
Provide architectural blueprints and technical leadership to our IT team
Keep up to date on the newest technological innovations in the field and be ready to apply relevant innovations.
Collaborate with peer organizations, quality assurance and end users to produce cutting-edge software solution.
Fosters a positive team environment
Ensures confidentiality of internal and external data
Performs ad-hoc projects and other duties as assigned
Verbal Communication Advanced
Written Communication Advanced
Learning Agility Advanced
Problem Solving Advanced
Process Orientation Advanced
Role Specific Skills
Comprehensive understanding of object-oriented and service-oriented application development techniques and theories
Solid understanding of relational database design and querying concepts
Exposure to Microsoft .NET development using C#, or JAVA or other major languages
Familiar with Design Pattern, algorithm and data structure
Knowledge of client/server application development
Knowledge of agile development and testing methodologies
Broad and deep technical knowledge
Experienced with source control management systems and continuous integration/deployment environments
Experienced with debugging, performance profiling and optimization
Internally motivated, able to work proficiently both independently and in a team environment
Strong communication skills with both internal team members and external business stakeholders
Strong initiative to find ways to improve solutions, systems, and processes
Bachelor's degree in Computer Science, or with equivalent professional experience
5+ years of experience as a senior software developer
Experience working on complex software projects