The Senior Software Developer is responsible for technically leading an existing team of Software Developers, working towards delivering reliable software and hardware solutions, writing impeccable code and delivering projects on time and budget. The senior software developer also acts as a Project Manager, taking ownership of assigned development projects from inception to delivery. They are expected to lead a team, with the ability to multi-task, teach and instruct co-workers, attend meetings with external clients as required to ensure client’s needs are met and successfully deliver all assigned projects.
- Lead and manage a project team of Software Developers in order to deliver project solutions on time and budget.
- Work collaboratively with the project manager to make sure that all aspects of the project are delivered as planned
- Raise and mitigate any potential technical risks.
- Take and understand business requirements and goals
- Conduct systems analysis making specific determinations relating to systems performance requirements
- Work with the web designers and other creative specialists to understand the design concept, and advise how it can be implemented technically within constraints.
- Build and architect solutions in a manner that enables different technical teams to work together in an efficient manner.
- To keep up to date with the latest software development technologies and methodologies.
- Drive consistent standards and approaches throughout the team.
- Write clean, healthy structured, well documented, consistently error free and well tested code.
- Build future proof reusable core code libraries, which can be shared, in-order to drive further efficiencies throughout the team.
- Review and promote the appropriate introduction, and plan for the implementation of software tool versions that offer new/latest features.
- Look to utilise industry standard software development tools such as source control, deployment servers, test driven development and build servers where appropriate in an effective manner.
- Have the latest in-depth knowledge of all on-site and relevant off-site aspects at the heart of all decisions on projects or enhancements that they make.
- Use experience when reviewing and auditing legacy code.
- Assist in critical support issues where experience is required to ascertain the issue quickly and to find the more appropriate resolution.
- Take control over critical support instances and putting into place the correct escalation and process to manage and resolve issue as soon as possible.
- Contribute regularly to discussions regarding internal process and system improvements in order to ensure maximum efficiency across the department. Including suggesting technical solutions to problems.
- Proactively drive innovation with new ideas and options made available by new technologies.
- Spend time reviewing code and offering constructive advice and training to team members.
- Foster a focus on excellence across the development team.
- Make sure quotations take into account all possible risks and contain the appropriate contingency.
- Freely share knowledge, insight, best practice and ideas.
- Research and recommend software tools to management.
- Provide assistance to testers and support personnel as needed to determine system problems.
- Identify changes in code and the environment that will affect system performance.
- Provide recommendations to management concerning issues of Software Developers’ productivity.
Skills
- Bachelor’s Degree in Computer Science, Software Engineering or related discipline.
- A senior level software developer with strong and successful technical lead experience.
- Advanced level (knowledge and experience) of programming languages and methodologies
- Extensive knowledge or experience of HTML, CSS, Javascript, Jquery, and server side technologies such as Java and/or PHP and/or Coldfusion. (4 years experience).
- Extensive knowledge or experience with software development using java technology. (4 Years experiences).
- Experience of managing, directing and motivating staff to deliver projects with stretching scope and objectives.
- Highly numerate and literate, with the ability to produce top quality written specifications and strategy and implementation communication.
- Proactive and highly organized, with strong time management and planning skills.
- Able to meet tight deadlines and remain calm under pressure.
- Experience at advising key stakeholders at senior and management level.
- Bright, highly self-motivated and driven
- Ability to solve problems quickly and completely
- Ability to multi-task and stay organized in a dynamic work environment.
- Analytical and inquisitive, with excellent attention to detail.
- Innovative and creative, with a concise, precise and effective approach to problem solving and the ability to develop, deliver and evaluate brilliant ideas founded on rock-solid strategic thinking.
- Credible, confident and articulate, with excellent communication and presentation skills and the ability to deliver ideas clearly and concisely to internal and external stakeholders at all levels of seniority.
- Reliable, flexible and cooperative.
- Diplomatic and tactful.
- Personable and approachable, with an enthusiastic and motivational nature and an overall passion for excellence.
Education
Bachelor’s Degree in Computer Science, Software Engineering or related discipline.
jobsbeirut@zawya.com