Software Engineer – SE246

Job Information

  • icon
    Category IT Jobs
  • icon
    Posted On Mar 19 ,2024
  • icon
    Qualifications Bachelor's Degree

Job Description

Outsource Company is a leading provider of software development and technology solutions, specializing in helping businesses leverage cutting-edge technology to achieve their goals. With a dedicated team of talented professionals, we offer a wide range of services, including custom software development, web and mobile application development, IT consulting, and outsourcing solutions. Our mission is to deliver innovative and cost-effective solutions that drive growth, efficiency, and success for our clients.

Position Overview:

We are currently seeking a skilled and motivated Software Engineer to join our dynamic team at Outsource Company. As a Software Engineer, you will have the opportunity to work on exciting projects across various industries, collaborating with cross-functional teams to design, develop, and implement high-quality software solutions. You will play a key role in driving innovation, solving complex problems, and delivering value to our clients through technology.

Key Responsibilities:

  1. Software Development: Design, develop, and maintain software applications, features, and functionalities using programming languages, frameworks, and tools such as Java, Python, JavaScript, .NET, React, Angular, and Node.js. Write clean, efficient, and scalable code that meets project requirements and adheres to coding standards.
  2. Requirements Analysis: Collaborate with clients, project managers, and stakeholders to gather and analyze requirements, user stories, and technical specifications for software projects. Translate business requirements into technical solutions, architecture designs, and implementation plans.
  3. System Architecture: Design and architect software systems, databases, and APIs to ensure scalability, reliability, and performance. Define system architecture components, modules, interfaces, and integration points, and develop technical documentation to communicate system design and functionality.
  4. Testing and Quality Assurance: Develop and implement unit tests, integration tests, and automated test scripts to validate software functionality, performance, and security. Collaborate with quality assurance testers to identify and resolve defects, bugs, and issues in software applications.
  5. Version Control and Collaboration: Utilize version control systems (e.g., Git, SVN) to manage source code repositories, branches, and merges. Collaborate with team members using collaboration tools such as Jira, Slack, and Confluence to track project progress, communicate updates, and coordinate tasks.
  6. Deployment and Release Management: Implement continuous integration (CI) and continuous deployment (CD) pipelines to automate software builds, testing, and deployment processes. Monitor production environments, troubleshoot deployment issues, and ensure smooth release cycles.
  7. Documentation and Knowledge Sharing: Create technical documentation, developer guides, and knowledge base articles to document software architectures, APIs, and workflows. Share knowledge and best practices with team members through code reviews, technical discussions, and mentorship.
  8. Research and Innovation: Stay up-to-date on emerging technologies, trends, and best practices in software development and engineering. Experiment with new tools, frameworks, and techniques to improve productivity, efficiency, and innovation in software engineering practices.

Qualifications:

  • Bachelor's degree in Computer Science, Software Engineering, or a related field. Master's degree or relevant certifications (e.g., AWS Certified Developer, Microsoft Certified: Azure Developer Associate) preferred.
  • Minimum of 3 years of experience in software development, software engineering, or related roles, with proficiency in one or more programming languages and frameworks.
  • Strong understanding of software development lifecycle (SDLC), agile methodologies, and software engineering principles.
  • Experience with cloud computing platforms (e.g., AWS, Azure, Google Cloud) and containerization technologies (e.g., Docker, Kubernetes) is a plus.
  • Excellent problem-solving, analytical thinking, and communication skills.
  • Ability to work collaboratively in a team environment and independently on projects.