Job Description:
We are seeking a highly skilled Software Architect with over 15 years of hands-on experience in developing high-performance and scalable systems. The ideal candidate will have a strong background in full-cycle software development, from requirements gathering to deployment, and possess expertise in various programming languages, databases, BI tools, and design methodologies.
Responsibilities:
· Full SDLC Experience: Lead and participate in all phases of the software development life cycle including requirements gathering, analysis, prototyping, architecture design, development, testing, and configuration management.
· Software Development: Utilize expertise in C#/.NET to develop robust and scalable applications. Write unmanaged code in C/C++ as needed for performance optimization.
· Application Development – Design, develop, test, deploy, and maintain software applications using modern programming languages and technologies(). Participate in code reviews, troubleshoot and debug applications to optimize performance and ensure functionality.Work closely with UX/UI designers to implement user-friendly interfaces and enhance user experience.
· Architecture Design: Design and implement comprehensive frameworks with a focus on scalability, maintainability, interoperability, and flexibility.
· Multi-threaded Applications: Develop high-performance multi-threaded server-side applications with a distributed scale-out approach for optimal performance.
· Database Design: Design, optimize, and maintain large-scale databases using SQL Server (versions 2005-2016) ensuring efficient data storage and retrieval.
· Business Intelligence (BI) Applications: Develop end-to-end BI solutions following Kimball’s DW/BI Architecture using Microsoft BI Stack, Microstrategy, Power BI, and other BI tools. Cover aspects such as source system analysis, ETL, data warehousing, and front-end reporting.
· Big Data Technologies: Leverage knowledge of Google AppEngine/Datastore/BigQuery, Attivio, and exposure to HDInsight and Hadoop for big data processing and analytics.
· Web and Mobile Development: Develop web applications using ASP.NET, MVC, Angular, and mobile apps using Xamarin for cross-platform compatibility.
· Design Methodologies: Apply Object-Oriented Methodology, Design Patterns, and the Kimball Approach for designing scalable and maintainable software systems.
· Tool & Technologies: Utilize a range of tools and technologies including JavaScript, Python, R, Microsoft .NET Framework, Entity Framework, Unity, LINQ, log4net, Git, SVN, TFS, SharePoint Server, and various IDEs for development and project management.
· AI technology – Research, design, and develop innovative AI algorithms to solve complex problems in areas such as natural language processing (NLP), computer vision, machine learning, and data analytics.
Qualifications:
· Bachelor’s or master’s degree in computer science, Engineering, or related field.
· Extensive experience in C#, C++/CLI, C/C++ (Native), JavaScript, TypeScript, Java, Python.
· Strong experience in SQL Server (2005-2016) for database design and programming.
· Proficiency in BI tools such as Microsoft SSIS, SSAS, SSRS, Microstrategy, Power BI, Tableau.
· Experience with web technologies including ASP.NET, MVC, Angular, HTML/CSS, jQuery, and mobile development with Xamarin.
· Familiarity with Big Data technologies such as Google BigQuery, Hadoop, and data analytics tools.
· Solid understanding of design methodologies, distributed applications, and SOA.
· Excellent communication skills and the ability to work in a collaborative team environment.
Additional Skills (Preferred):
· Exposure to cloud platforms such as Azure, AWS and Google Cloud Platform for scalable cloud-based solutions.
· Knowledge of containerization technologies like Docker and orchestration tools like Kubernetes.
· Experience with Agile methodologies and DevOps practices for continuous integration and deployment.
· This position offers the opportunity to work on challenging projects, collaborate with talented teams, and contribute to the development of cutting-edge software solutions. If you have a passion for technology and a track record of delivering high-quality software, we encourage you to apply and join our dynamic team.