Software Developer
Thales
- Jeddah, Makkah
- Permanent
- Full-time
- Develop proficiency in programming languages, frameworks, and tools and apply this knowledge to write clean, efficient, and maintainable code.
- Collaborate with senior developers, architects, and cross-functional teams to understand and translate business requirements into technical specifications and design documents.
- Participate in the development of software applications, modules, and components, following established coding standards, best practices, and development methodologies.
- Assist in the design and implementation of database schemas, APIs, and integration points, ensuring data integrity, security, and performance.
- Conduct thorough testing and debugging of software components, identify and resolve issues, and ensure the delivery of high-quality, error-free code.
- Contribute to the development and maintenance of technical documentation, including user manuals, installation guides, and code comments, to facilitate knowledge sharing and future maintenance.
- Actively participate in code reviews, providing constructive feedback and incorporating suggestions from senior developers to improve code quality and adhere to best practices.
- Continuously expand knowledge and stay updated with the latest industry trends, technologies, and best practices through self-learning, attending training sessions, and participating in professional development opportunities.
- Collaborate effectively with team members, fostering a positive and inclusive work environment, and actively contribute to team discussions and problem-solving sessions.
- Demonstrate a strong commitment to delivering high-quality work within project timelines, proactively communicating progress, challenges, and potential risks to project stakeholders.
- Provide technical support and troubleshooting assistance to end-users, helping to identify and resolve software-related issues in a timely and professional manner.
- Work with architects to transform the high and low-level system design into technical components.
- Develop applications based on technical requirements, design & architecture principles & standards.
- Design and develop reusable code and libraries for platform & shared services.
- Produce work products and applications that reflect and ensure system design and delivery are in line with business needs and project plan.
- Draft specifications, technical design, unit tests, code reviews, detailed system integration documents and any other documents as required during the project lifecycle.
- Contribute to maintaining a high standard of delivery quality
- Collaborate with other team members and stakeholders.
- Java development experience 5+ years.
- Saudi National.
- Good knowledge and experience with Java/Angular JS, GoLang, Spring framework, Spring Boot, Spring Cloud and Microservices architecture is a must.
- Experience in writing complex SQL statements and queries with Oracle or Microsoft SQL Server
- Experience in designing services and applications using Microservices or Service Oriented Architecture principles.
- Practical knowledge on Jenkins, Maven, antifactory/nexus, Ansible, GIT
- Good knowledge in continuous integration, build & dependency management using messaging systems such as WebSphere MQ or RabbitMQ.
- Very good understanding of application system design, development, testing, deployment and maintenance.
- Experience in implementing extensive unit-tests using automated test frameworks.
- Experience with Agile methodology.
- Engineering Degree in Computer Science.