A Software Engineer responsible for designing, developing, and maintaining internal IT applications and automation tools to support organizational operations, collaborating with cross-functional teams, and ensuring software quality and security.
Key Responsibilities
Design, develop, and implement software applications and tools to automate IT processes and improve system functionality
Write clean, well-documented, and efficient code in various programming languages
Collaborate with IT operations, security, and infrastructure teams to understand needs and translate them into technical specifications
Develop and maintain APIs and integrations between IT systems and applications
Participate in the full software development lifecycle, including requirements gathering, design, testing, deployment, and maintenance
Troubleshoot and resolve software defects and production issues
Develop and execute tests to ensure software quality and reliability
Contribute to technical documentation such as design specifications and user manuals
Implement security best practices in software development
Work with database administrators to design and optimize database schemas
Provide technical support and guidance to IT team members
Participate in agile development processes like sprint planning and stand-ups
Requirements
Bachelor's degree in Computer Science, Software Engineering, or a related field.
Proven experience as a Software Engineer or Developer, with a focus on developing applications for internal IT use or business process automation.
Strong proficiency in one or more programming languages e.g., Python, Java, C, JavaScript.
Experience with database technologies e.g., SQL Server, MySQL, PostgreSQL and writing SQL queries.
Familiarity with API development and integration RESTful, SOAP.
Understanding of software development methodologies e.g., Agile, Waterfall.
Experience with version control systems e.g., Git.
Strong problem-solving and analytical skills.
Excellent communication and collaboration skills.
Ability to work independently and as part of a team.
Participate in the full software development lifecycle, including requirements gathering, design, development, testing, deployment, and maintenance.
Troubleshoot and resolve software defects and production issues in a timely manner.
Develop and execute unit, integration, and system tests to ensure the quality and reliability of software solutions.
Develop and maintain technical documentation, including design specifications, user manuals, and API documentation.
Collaborate with IT operations, security, and infrastructure teams to understand their needs and translate them into technical specifications.
Implement and maintain security best practices in software development to ensure the security of applications and data.
Work closely with database administrators to design and optimize database schemas for applications.
Participate in agile development methodologies, including sprint planning, daily stand-ups, and retrospectives.
Assist in basic IT office support.
Benefits & Perks
Compensation/salary range not specified
Work schedule not specified
Work environment perks not specified
Opportunities for professional development in software development trends and best practices
Participation in agile development methodologies
Collaborative team environment
Potential for growth in cloud, automation, containerization, and security technologies
Ready to Apply?
Join Anew Climate and make an impact in renewable energy