Header image

Our culture

Company Trip 2022 – SupremeSummer

13/07/2022

174

Company Trip 2022 - SupremeSummer

As someone said, “It doesn’t matter where you’re going, it’s who you have beside you”. And we made memories to cherish and spent time with those who matter the most to us – our beloved STers.

When July came, it brought the atmosphere of summer and the time for a faraway trip with lots of excitement.

SupremeTech Family’s 2-day journey in Vipearl Resort & Spa Nam Hoi An has just closed along with so much joy and happiness in every STers’ heart. With the theme “SupremeSummer”, we want to create an absorbing journey where STers can fully enjoy and discover their own limits.

Company Trip 2022_1

After 2 years postpone due to the epidemic, Company Trip is an opportunity for all members of the SupremeTech family to renew and burn ourselves after hard- working times.

Starting at 8 AM, we stopped at Sandy Beach resort Da Nang with blue sea, white sand and straight coconut groves to start our exciting and “sweaty” team-building session.

Company Trip 2022_2
Company Trip 2022_3
Company Trip 2022_4
Company Trip 2022_5

After refreshing ourselves with an energized game as well as a delicious lunch at Sandy Beach resort Da Nang, we started moving to Vipearl Resort & Spa Nam Hoi An to prepare for a grand gala dinner night.

The Gala Dinner was successfully held with meaningful award ceremonies, interesting minigames as well as musical performances from talented STers. We seriously enjoyed this moment to the fullest together.

Company Trip 2022_6
Company Trip 2022_7
Company Trip 2022_8
Company Trip 2022_9

2 days 1 night in Hoi An has officially ended, and the energy has been fully charged. Now it’s time for us to get back to work, and try our best to conquer new goals. Thanks to all STers for your contribution to a memorable Company Trip and have been an important part of the SupremeTech family.

Memories are timeless treasures of the heart and photographs keep memories from running away. Let’s have a minute to scroll down for more photos and see how we enjoyed these moments:

Company Trip 2022_10
Company Trip 2022_11
Company Trip 2022_12
Company Trip 2022_13
Company Trip 2022_14
Company Trip 2022_15
Company Trip 2022_16
Company Trip 2022_17
Company Trip 2022_18
Company Trip 2022_19
Company Trip 2022_20
Company Trip 2022_21

Related Blog

cross-platform mobile development with golang and the pros and cons of building native apps with golang

Knowledge

+0

    Cross-Platform Mobile Development with Golang: Build Native Apps

    Over the past few years, cross-platform solutions have gained popularity for their ability to streamline development efforts. Golang proves to be an optimal language for cross-platform mobile development, offering developers a powerful toolset and robust frameworks. In this article, we explore the use of Golang in cross-platform mobile development and delve into frameworks like Gomobile and Fyne that enable developers to build native mobile apps using Golang. The Rise of Cross-Platform Mobile Development Cross-platform mobile development allows developers to write code once and deploy it across multiple platforms like iOS or Android. With the diversity of mobile operating systems, cross-platform solutions have become increasingly popular among developers and businesses alike. Golang for Cross-Platform Development Golang's simplicity, performance, and concurrency features make it well-suited for mobile app development. Its efficient support for multiple platforms enable developers to write code once and deploy it across various devices seamlessly. Additionally, Golang's static typing and error checking contribute to the reliability and stability of mobile applications. Frameworks for Cross-Platform Mobile Development with Golang Gomobile Gomobile is an open-source project developed by the Go team at Google. It allows developers to build and deploy native mobile apps using Golang. Gomobile enables developers to write platform-specific code in Go and access platform-specific APIs, such as those provided by iOS and Android. The framework provides tools for compiling Go code into native libraries and generating bindings for mobile platforms, facilitating seamless integration with native code. Fyne Fyne is a lightweight and user-friendly framework for building cross-platform graphical interfaces in Go. While primarily focused on desktop applications, Fyne supports mobile platforms through its responsive design and flexible layout system. Developers can create mobile apps using Fyne's declarative UI components and build custom interfaces that adapt to different screen sizes and orientations. Fyne's simplicity and ease of use make it an attractive option for Golang developers seeking to build native mobile apps. Advantages of Building Native Apps with Golang Performance: Golang's efficient runtime and compiled nature result in fast and responsive mobile applications, providing users with a smooth and seamless experience.Code Reusability: Golang's cross-platform capabilities allow developers to reuse a significant portion of their codebase across different platforms, reducing development time and effort.Access to Native APIs: Frameworks like Gomobile enable developers to access platform-specific APIs and functionalities. As a result, it allows for seamless integration with device hardware and native platform features.Community Support: Golang's active and supportive community provides developers with access to resources, libraries, and documentation. Furthermore, the dynamic community facilitates the development process and encouraging collaboration. Challenges and Considerations While Golang offers several advantages for cross-platform mobile development, there are also some challenges and considerations to keep in mind: Platform Limitations: Cross-platform frameworks may have limitations in accessing certain platform-specific features or APIs. Sometimes it requires developers to find workarounds or use native code for certain functionalities.Learning Curve: Developers may need to familiarize themselves with the syntax and conventions of Golang.Performance Optimization: Developers may need to optimize their code and implement best practices to ensure optimal performance on mobile devices with varying hardware specifications. Conclusion Cross-platform mobile development with Golang offers developers a powerful and efficient approach to building native mobile apps. Frameworks like Gomobile and Fyne provide developers with the tools and resources they need to create responsive, performant, and feature-rich applications for iOS and Android platforms. By leveraging Golang's advantages, developers can unlock new opportunities and deliver high-quality mobile experiences to users around the world. If you're considering Golang for your development project, let us help! Contact SupremeTech for your custom consultancy!

    12/03/2024

    36

    Knowledge

    +0

      12/03/2024

      36

      Cross-Platform Mobile Development with Golang: Build Native Apps

      automated deployment for golang applications

      How-To

      Knowledge

      +0

        Automating Deployment of GoLang Applications

        Welcome back, tech fellows! Happy Lunar New Year to you all! Looking back on the past projects we've done, we realized that even big companies are struggling with some time-consuming and unbelievably outdated deployment process. Believe me there's plenty of them out there. I wonder whether it's hard to adapt new procedures or automation is out of reach? Neither should make sense. In this article, we'll explore strategies, tools, and best practices for automating the deployment of GoLang applications to various environments. Deploying GoLang applications across different environments, such as development, staging, and production, can be a complex and error-prone process. Automating this deployment process ensures consistency and reliability, reduces human error, and speeds up the delivery pipeline. Introduction Deploying GoLang applications involves tasks like building binaries, managing dependencies, configuring environment-specific settings, and deploying artifacts to target environments. Manual deployment processes are tedious, error-prone, and time-consuming. Automation streamlines these tasks, enabling teams to deliver software faster and with greater confidence. 1. Continuous Integration/Continuous Deployment (CI/CD) Pipelines Implementing CI/CD pipelines automates the entire deployment workflow, from code commit to production deployment. Tools like Jenkins, GitLab CI/CD, or CircleCI can be configured to trigger builds, run tests, and deploy GoLang applications automatically. Utilizing GoLang's robust testing framework ensures that only quality code gets deployed. 2. Infrastructure as Code (IaC): Using tools like Terraform or Pulumi, infrastructure can be provisioned and configured programmatically. GoLang's rich ecosystem of libraries and its concurrency model make it well-suited for defining infrastructure in code. Infrastructure changes can be version-controlled, audited, and applied consistently across different environments. 3. Containerization and Orchestration: Containerizing GoLang applications using Docker simplifies deployment and ensures consistency across environments. Kubernetes, with its declarative approach to managing containerized applications, can automate deployment, scaling, and rolling updates. GoLang's lightweight footprint makes it ideal for containerized environments. 4. Configuration Management: Automating configuration management ensures that GoLang applications behave consistently across environments. Tools like Consul, etcd, or Kubernetes ConfigMaps can store configuration settings external to the application code. GoLang's ability to parse various configuration formats and its strong typing facilitate seamless integration with configuration management systems. 5. Blue-Green Deployment and Canary Releases: Implementing blue-green deployment or canary release strategies reduces deployment risk and enables gradual rollout of new features. GoLang's support for graceful shutdowns and zero-downtime deployments ensures uninterrupted service during deployments. Automation tools can facilitate switching traffic between blue and green environments or gradually increasing traffic to canary releases. Conclusion Automating the deployment process of GoLang applications to various environments is essential for achieving consistency and reliability in software delivery. By leveraging CI/CD pipelines, Infrastructure as Code, containerization, configuration management, and deployment strategies like blue-green and canary releases, teams can deploy GoLang applications confidently and efficiently, ultimately delivering value to end-users faster. Contact us for a fast and productive development procedures!

        23/02/2024

        129

        How-To

        +1

        • Knowledge

        23/02/2024

        129

        Automating Deployment of GoLang Applications

        is react native good for mobile app development

        Knowledge

        +0

          Is React Native Good for Mobile App Development? A Simple Guide

          Mobile app development has evolved rapidly, and developers often find themselves faced with the decision of choosing the right framework for their projects. Among the various options available, React Native has gained significant popularity. But is React Native really a good choice for mobile app development? Let's break it down in simple terms. Understanding React Native React Native 101: React Native is an open-source framework developed by Facebook that allows developers to build mobile applications using the familiar syntax of React, a popular JavaScript library for building user interfaces. The key advantage? You can write your code once and run it on both iOS and Android platforms, saving time and effort. Find out more about the general pros and cons of using React Native for web app development. When to Choose React Native 1. Prototyping and MVPs: If you're in the early stages of app development and need to quickly validate your ideas, React Native is a solid choice. Its rapid development capabilities make it ideal for creating prototypes and minimum viable products (MVPs) that can be tested on both iOS and Android platforms. 2. Limited Development Resources: For teams with developers skilled in JavaScript, React Native provides a familiar environment. This is particularly advantageous if you have a smaller team or a tight budget, as it allows you to leverage existing skills rather than investing in learning platform-specific languages. 3. Content-Driven Apps: Apps that heavily rely on displaying content, such as news apps or social media platforms, can benefit from React Native's efficiency. The framework's ability to handle complex UIs and its performance optimization make it suitable for content-centric applications. 4. Apps Requiring Regular Updates: React Native's hot reloading feature makes it an excellent choice for apps that require frequent updates. Developers can make changes on the fly without disrupting the user experience, making it easier to implement improvements and fix bugs promptly. 5. Small to Medium-Sized Apps: While React Native can handle large-scale applications, it truly shines in the development of small to medium-sized apps. Its simplicity and efficiency make it an excellent fit for projects where a lightweight framework is preferred. Considerations and Limitations 1. Complex Animations and Graphics: While React Native is excellent for most UI interactions, highly complex animations and graphics might benefit from a more native approach. In such cases, a blend of React Native and native modules might be necessary. 2. Platform-Specific Requirements: If your app heavily relies on platform-specific features, you might find yourself writing native modules or components. While React Native tries to be a one-size-fits-all solution, there are instances where platform-specific code is unavoidable. 3. Learning Curve for Native Modules: When dealing with complex functionalities or integrations, you might need to dip into native modules. This could require knowledge of Swift or Java, adding a bit of a learning curve for developers primarily familiar with JavaScript. Conclusion In the ever-expanding landscape of mobile app development, React Native stands out as a versatile and efficient framework. Its cross-platform capabilities, along with a plethora of benefits, make it a compelling choice for many projects. However, like any tool, it's crucial to understand its strengths and limitations. So, is React Native good for mobile app development? Absolutely, especially when it aligns with your project requirements and development goals. For rapid prototyping, cross-platform compatibility, and content-centric applications, React Native proves to be an excellent companion. As with any development decision, it's about finding the right tool for the job, and React Native certainly deserves a spot in the toolbox.

          15/01/2024

          448

          Knowledge

          +0

            15/01/2024

            448

            Is React Native Good for Mobile App Development? A Simple Guide

            pros and cons of using react native in web app development

            Knowledge

            +0

              Pros and Cons of Using React Native in Web App Development

              As a seasoned React developer navigating the dynamic landscape of web app development, the choice of frameworks can significantly impact project outcomes. React Native, originally designed for mobile app development, has increasingly found its way into the realm of web applications. Let's dissect the pros and cons of employing React Native in web app development with a straightforward lens. Pros of using React Native **1. Cross-Platform Development:** React Native's hallmark is its ability to facilitate cross-platform development. This is a game-changer for web apps seeking a unified codebase for both desktop and mobile experiences. The advantages are evident in projects like Facebook's own Ads Manager, where a shared codebase expedites development and maintenance. **2. Reusable Components:** The component-based architecture of React Native isn't just for show. It promotes code reusability and consistency across different parts of your web app. For instance, a custom UI component developed for a specific feature can seamlessly find its way into other sections, ensuring a uniform look and feel. **3. Familiarity with React:** For developers well-versed in React, the transition to React Native for web app development is remarkably smooth. The ability to leverage existing knowledge and skills in JavaScript and React principles expedites the learning curve, fostering a more efficient development process. **4. Community Support:** The React Native community is robust, offering a plethora of resources, libraries, and third-party tools. For web app developers, this translates into an abundance of solutions and best practices readily available. A supportive community ensures that challenges are met with collective knowledge and innovation. Cons of using React Native **1. Limited Access to Native Modules:** While React Native provides access to a wide array of native modules, it may lack support for certain platform-specific features. For example, if your web app requires intricate functionalities deeply rooted in native capabilities, relying solely on React Native might present limitations. **2. Web-Specific Performance Challenges:** React Native, initially designed for mobile environments, may not seamlessly translate to optimal performance in web browsers. Rendering complex UIs and handling animations can pose challenges, as the framework's strengths lie more in the mobile app domain. **3. Learning Curve for React Native Web:** Despite React Native's familiarity for React developers, adapting it for web app development involves a learning curve. Navigating the nuances of React Native Web, the library extension for web applications, might require additional effort. This could potentially impact development timelines. **4. Limited Ecosystem for Web:** While React Native boasts a mature ecosystem for mobile development, its offerings for web app development are relatively nascent. Developers might encounter scenarios where specific web-related functionalities are not as well-supported or documented as their mobile counterparts. Navigating the Decision Scenario 1: Building a Cross-Platform App with Unified Codebase Consider React Native for a project where a cross-platform web app with a unified codebase is a priority. For instance, an e-commerce platform aiming for consistency across desktop and mobile interfaces could benefit significantly from React Native. Scenario 2: High Dependency on Platform-Specific Features If your web app heavily relies on platform-specific features or demands high-performance graphics, consider evaluating alternatives. Directly using native frameworks or exploring hybrid solutions tailored for web might be more suitable. Scenario 3: Leveraging Existing React Skills for Web Development If your team is well-versed in React and wishes to leverage existing skills for web app development, React Native becomes a pragmatic choice. This is particularly relevant for projects where a rapid development cycle is crucial. Conclusion: In the nuanced landscape of web app development, React Native brings both advantages and challenges. Its cross-platform capabilities and code-sharing benefits can be instrumental in specific scenarios, while considerations such as performance optimization and access to native features must be weighed. Ultimately, the decision to use React Native for web app development hinges on project requirements, development goals, and the unique characteristics of the application. A pragmatic approach involves assessing the strengths and limitations outlined here, aligning them with the project's needs, and making an informed decision that best serves the development objectives.

              14/01/2024

              491

              Knowledge

              +0

                14/01/2024

                491

                Pros and Cons of Using React Native in Web App Development

                Post banner imagePost banner image
                Customize software background

                Want to customize a software for your business?